Skip to content

Allows you to describe and make instances of Faceted Contexts

License

Notifications You must be signed in to change notification settings

halforbit/facets

Repository files navigation

Facets

The Facets library allows you to describe and make instances of Faceted Contexts. These are interfaces decorated with facet attributes.

public interface IDataContext : IContext
{
    [DataStore, RootPath(TestRootPath), JsonSerialization, GZipCompression]
    IDataStore<string> DataStore { get; }
}

These contexts are descriptive and implementationless at design time.

Component authors create facet attributes (such as the DataStoreAttribute, RootPathAttribute, etc. above) that allow facets of their components to be composed at runtime.

You can use a ContextFactory to create an instance of a context at runtime.

var context = new ContextFactory().Create<IDataContext>();

Facets can be used with Data Stores to create DRY, descriptive, implementationless data contexts.

Nuget

Halforbit.Facets is available as a .NET Standard Nuget package:

Install-Package Halforbit.Facets

Build Status

About

Allows you to describe and make instances of Faceted Contexts

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages