FeatureMasterX 10.0.0
dotnet add package FeatureMasterX --version 10.0.0
NuGet\Install-Package FeatureMasterX -Version 10.0.0
<PackageReference Include="FeatureMasterX" Version="10.0.0" />
<PackageVersion Include="FeatureMasterX" Version="10.0.0" />
<PackageReference Include="FeatureMasterX" />
paket add FeatureMasterX --version 10.0.0
#r "nuget: FeatureMasterX, 10.0.0"
#:package FeatureMasterX@10.0.0
#addin nuget:?package=FeatureMasterX&version=10.0.0
#tool nuget:?package=FeatureMasterX&version=10.0.0
FeatureMasterX
Overview
FeatureMasterX is a powerful and easy-to-use extension for Microsoft's FeatureManagement library. It simplifies feature toggling by allowing more intuitive configurations for users, accounts, and other contexts.
🔹 Key Features
- Reduces boilerplate code with intuitive APIs.
- Supports user-based and global feature flags.
- Optimized for scalability and flexibility.
ListCheckFeatureFilter
The first implementation, ListCheckFeatureFilter, allows you to group multiple features under ListCheck. It evaluates access based on the EnabledFor property:
- If
EnabledForis set to ALL, always return true. - Otherwise, only the specified can access the feature.
Configuration Example
{
"FeatureManagement": {
"ListCheck": {
"NewFeature": {
"EnabledFor": [ "user1@example.com", "admin@example.com" ]
},
"AllFeature": {
"EnabledFor": [ "ALL" ]
}
}
}
}
Installation
Install-Package FeatureMasterX
Usage
Register in services
builder.AddFeatureMasterX();
var featureManager = services.BuildServiceProvider().GetRequiredService<IFeatureManager>();
if (await featureManager.IsEnabledAsync("NewFeature", "user10@example.com"))
{
// Feature is enabled for the current user
}
License
This project is licensed under the MIT License.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.FeatureManagement (>= 4.3.0)
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
- Microsoft.FeatureManagement (>= 4.3.0)
-
net9.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.1)
- Microsoft.FeatureManagement (>= 4.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
10.0.0
- Feature: Port in NET 10.0. Remove support for net6.0
9.0.2
- Feature: Add Scoped Dependency Injection of FeatureMasterX
9.0.1
- Feature: Multitargets
9.0.0
- Feature: Port in NET 9.0 and add Package Icon.
8.0.0
- Feature: Port in NET 8.0
6.0.0
- Feature: Implement the NuGet Package to use Feature Management and make it easier to use for list.