Microsoft.FeatureManagement Namespace

Classes

AspNetCoreFeatureManagementBuilderExtensions

Extensions to the IFeatureManagementBuilder.

AssignerAliasAttribute

Allows the name of an IFeatureVariantAssigner to be customized to relate to the name specified in configuration.

DynamicFeatureDefinition

The definition of a dynamic feature.

FeatureFilterConfiguration

The configuration of a feature filter.

FeatureFilterEvaluationContext

A context used by IFeatureFilter to gain insight into what feature flag is being evaluated and the parameters needed to check whether the feature flag should be enabled.

FeatureFlagDefinition

The definition of a feature flag.

FeatureManagementException

Represents errors that occur during feature management.

FeatureManagementOptions

Options that control the behavior of the feature management system.

FeatureVariant

A variant of a feature.

FeatureVariantAssignmentContext

Contextual information needed during the process of feature variant assignment

FilterAliasAttribute

Allows the name of an IFeatureFilter to be customized to relate to the name specified in configuration.

FilterCollectionExtensions

Provides integration points for feature management with MVC Filters.

ServiceCollectionExtensions

Extensions used to add feature management functionality.

UseForFeatureExtensions

Extension methods that provide feature management integration for ASP.NET Core application building.

Interfaces

IContextualFeatureFilter<TContext>

A filter that can be used to determine whether some criteria is met to enable a feature flag. A feature filter is free to use any criteria available, such as process state or request content. Feature filters can be registered for a given feature and if any feature filter evaluates to true, that feature flag will be considered enabled. A contextual feature filter can take advantage of contextual data passed in from callers of the feature management system. A contextual feature filter will only be executed if a context that is assignable from TContext is available.

IContextualFeatureVariantAssigner<TContext>

Provides a method to assign a variant of a dynamic feature to be used based off of custom conditions.

IDynamicFeatureDefinitionProvider

A provider of dynamic feature definitions.

IDynamicFeatureManager

Used to access the variants of a dynamic feature.

IDynamicFeatureManagerSnapshot

Provides a snapshot of feature state to ensure consistency across a given request.

IFeatureFilter

A filter that can be used to determine whether some criteria is met to enable a feature flag. A feature filter is free to use any criteria available, such as process state or request content. Feature filters can be registered for a given feature flag and if any feature filter evaluates to true, that feature flag will be considered enabled.

IFeatureFilterMetadata

Marker interface for feature filters used to evaluate the state of a feature flag.

IFeatureFlagDefinitionProvider

A provider of feature flag definitions.

IFeatureManagementBuilder

Provides a way to customize feature management functionality.

IFeatureManager

Used to evaluate whether a feature flag is enabled or disabled.

IFeatureManagerSnapshot

Provides a snapshot of feature flag state to ensure consistency across a given request.

IFeatureVariantAssigner

Provides a method to assign a variant of a dynamic feature to be used based off of custom conditions.

IFeatureVariantAssignerMetadata

Marker interface for feature variant assigners used to assign which variant should be used for a dynamic feature.

IFeatureVariantOptionsResolver

Performs the resolution and binding necessary in the feature variant resolution process.

ISessionManager

Used to store feature state across a session. The implementor is free to decide what constitutes a session.

Enums

FeatureManagementError

An error that can occur during feature management.

RequirementType

Describes whether any or all features in a given set should be required to be considered enabled.