Raycynix.Extensions.Configuration.Abstractions
2.0.0
dotnet add package Raycynix.Extensions.Configuration.Abstractions --version 2.0.0
NuGet\Install-Package Raycynix.Extensions.Configuration.Abstractions -Version 2.0.0
<PackageReference Include="Raycynix.Extensions.Configuration.Abstractions" Version="2.0.0" />
<PackageVersion Include="Raycynix.Extensions.Configuration.Abstractions" Version="2.0.0" />
<PackageReference Include="Raycynix.Extensions.Configuration.Abstractions" />
paket add Raycynix.Extensions.Configuration.Abstractions --version 2.0.0
#r "nuget: Raycynix.Extensions.Configuration.Abstractions, 2.0.0"
#:package Raycynix.Extensions.Configuration.Abstractions@2.0.0
#addin nuget:?package=Raycynix.Extensions.Configuration.Abstractions&version=2.0.0
#tool nuget:?package=Raycynix.Extensions.Configuration.Abstractions&version=2.0.0
Raycynix.Extensions.Configuration.Abstractions
Raycynix.Extensions.Configuration.Abstractions contains the contracts used by the Raycynix configuration packages.
What it contains
ConfigurationReloadBehaviorAttributeIApplicationEnvironmentIConfigurationAccessor<TOptions>IConfigurationChangeHandler<TOptions>IConfigurationDefaults<TOptions>IConfigurationDiagnosticsIConfigurationRedactorIFeatureFlagAccessorIConfigurationReloadPolicy<TOptions>IConfigurationValidator<TOptions>ConfigurationChangeContext<TOptions>ConfigurationRegistrationInfoConfigurationReloadInfoConfigurationReloadBehaviorConfigurationReloadResultConfigurationValidationResult
Purpose
This package allows applications and libraries to provide their own typed access, feature-flag access, diagnostics, redaction, default-value, validation, reload-governance, and change-handling strategies for typed configuration models without depending on the configuration implementation package.
Example
Libraries can depend only on abstractions and consume the current typed configuration through IConfigurationAccessor<TOptions>:
public sealed class CacheService(IConfigurationAccessor<CacheOptions> configurationAccessor)
{
public int GetDefaultTtlSeconds()
{
return configurationAccessor.Current.DefaultTtlSeconds;
}
}
Runtime reload rules can also be expressed at the options model level:
public sealed class CacheOptions
{
[ConfigurationReloadBehavior(ConfigurationReloadBehavior.Reject)]
public string ConnectionString { get; init; } = string.Empty;
public int DefaultTtlSeconds { get; init; }
}
Diagnostics consumers can depend on IConfigurationDiagnostics to inspect registered options, retained reload decisions, and redacted snapshots without referencing the implementation package directly.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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.Configuration.Abstractions (>= 10.0.7)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.7)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Raycynix.Extensions.Configuration.Abstractions:
| Package | Downloads |
|---|---|
|
Raycynix.Extensions.Configuration
Core typed-configuration registration, named options, diagnostics with redacted snapshots, feature flags, validation, reload governance, change handling, and environment-aware source composition for Raycynix applications. |
|
|
Raycynix.Extensions.Logging
Structured logging registration, Serilog-based host integration, typed logger adapters, and configurable console logging for Raycynix applications. |
|
|
Raycynix.Extensions.Metrics
Core metrics registration, Prometheus-backed metric services, typed metrics configuration, and application-level instrumentation composition for Raycynix applications. |
GitHub repositories
This package is not used by any popular GitHub repositories.
v2.0.0 adds named options contracts, configuration diagnostics, redacted snapshot contracts, expanded reload decisions, required-section metadata, and feature flag accessor snapshot support.