用途:面向 .NET 应用的配置实践,基于 Microsoft.Extensions.Configuration 与 Microsoft.Extensions.Options,讲解选项模式、验证、用户机密、环境配置与功能标志。
主要能力:配置源及优先级(appsettings.json、appsettings.{Environment}.json、开发环境用户机密、环境变量、命令行参数,后加载者生效),可添加自定义源如 AddJsonFile。选项模式将配置节绑定到强类型类,通过 DI 注入;IOptions<T> 单例、启动后不重载,IOptionsSnapshot<T> 作用域、每次请求重载,IOptionsMonitor<T> 单例、支持实时重载与变更通知(OnChange)。验证支持数据批注与 IValidateOptions<T>,建议用 ValidateOnStart 在启动时快速失败。用户机密用于开发,命令包括 dotnet user-secrets init、set、list、clear。功能标志基于 Microsoft.FeatureManagement.AspNetCore,支持 Percentage、TimeWindow、Targeting 及自定义 IFeatureFilter,可用 IFeatureManager 或 [FeatureGate] 特性。还涵盖命名选项、PostConfigure、环境变量用双下划线分隔层次键、按环境条件注册服务,以及配置测试示例。
限制与边界:不涉及 DI 容器机制与服务生命周期、EditorConfig 与分析器规则、结构化日志管道。生产环境不应使用用户机密。资料未提供具体收费、价格或性能数据。