Lussatite.FeatureManagement.SessionManagers
1.6.1
See the version list below for details.
dotnet add package Lussatite.FeatureManagement.SessionManagers --version 1.6.1
NuGet\Install-Package Lussatite.FeatureManagement.SessionManagers -Version 1.6.1
<PackageReference Include="Lussatite.FeatureManagement.SessionManagers" Version="1.6.1" />
paket add Lussatite.FeatureManagement.SessionManagers --version 1.6.1
#r "nuget: Lussatite.FeatureManagement.SessionManagers, 1.6.1"
// Install Lussatite.FeatureManagement.SessionManagers as a Cake Addin #addin nuget:?package=Lussatite.FeatureManagement.SessionManagers&version=1.6.1 // Install Lussatite.FeatureManagement.SessionManagers as a Cake Tool #tool nuget:?package=Lussatite.FeatureManagement.SessionManagers&version=1.6.1
Lussatite.FeatureManagement.SessionManagers
Various read-only ISessionManager implementations which are compatible with .NET Standard 2.0. These implementations do not write back to the underlying value store.
ISessionManager Implementations
While these ISessionManager
implementations are written for Lussatite.FeatureManagement
, they are compatible with the Microsoft ISessionManager
interface and could be used with the Microsoft FeatureManager
implementation.
ClaimsPrincipalSessionManager
A read-only ISessionManager
implementation that examines ClaimsPrincipal
claims of type "feature_flag" to obtain the feature value. The value of the claim is either the feature name to indicate true, or the feature name prefixed with an exclamation point ("!") to indicate false.
SqlSessionManager
An ISessionManager
implementation that uses user-provided DbCommand
objects to obtain/update its values. Write-back is optional for the SetValue()
call.
In order to construct the SqlSessionManager
, you need to provide it with a SqlSessionManagerSettings
object. See the SessionManagers.SqlClient or SessionManagers.SQLite for default setting objects which already have the necessary SQL statements.
var settings = new SQLServerSessionManagerSettings
{
ConnectionString = "some connection string",
EnableSetValueCommand = true,
};
var sqlSessionManager = new SqlSessionManager(settings);
// inject the sqlSessionManager into the LussatiteLazyCacheFeatureManager constructor
CachedSqlSessionManager
A cached ISessionManager
implementation that uses a user-provided DbCommand
to obtain its values. The results for a particular feature flag name will be cached for 60 seconds. This object is configured using a CachedSqlSessionManagerSettings
object.
It uses LazyCache under the hood.
StaticAnswerSessionManager
An ISessionManager
implementation which always returns the same answer for the feature name. It's really only useful in testing scenarios where you need to validate both control pathways in the code.
Target
- .NET Standard 2.0
References
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- LazyCache (>= 2.4.0)
- Lussatite.FeatureManagement (>= 1.6.1)
- Microsoft.FeatureManagement (>= 2.5.1)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Lussatite.FeatureManagement.SessionManagers:
Package | Downloads |
---|---|
RimDev.AspNetCore.FeatureFlags
A library for strongly typed feature flags in .NET Standard 2.0. |
|
Lussatite.FeatureManagement.SessionManagers.SqlClient
A set of SqlSessionManagerSettings implementations for .NET Standard 2.0 which interface with Microsoft SQL Server. |
|
Lussatite.FeatureManagement.SessionManagers.SQLite
A set of SqlSessionManagerSettings implementations for .NET Standard 2.0 which interface with SQLite. |
GitHub repositories
This package is not used by any popular GitHub repositories.