摘要: 一、三种验证方法 1.直接注册验证函数 services.AddOptions<OrderServiceOptions>().Configure(options => { configuration.Bind(options); }).Validate(options => options.MaxO 阅读全文
posted @ 2020-04-07 16:31 前线码农 阅读(309) 评论(0) 推荐(1) 编辑
摘要: 一、关键类型 IOptionsMonitor<out TOptions> //服务注册services.AddSingleton时使用 IOptionsSnapshot<out TOptions> //服务注册services.AddScoped 时使用 二、IOptionsSnapshot 方式 阅读全文
posted @ 2020-04-07 15:03 前线码农 阅读(247) 评论(0) 推荐(1) 编辑
摘要: 一、特性 支持单例模式读取配置 支持快照 支持配置变更通知 支持运行时动态修改选项值 二、设计原则 接口分离原则 (ISP) ,我们的类不应该依赖它不使用的配置 关注点分离 (SoC),不同组件、服务、类之间的配置不应相互依赖或耦合 三、建议 为我们的服务设计 XXXOptions 使用 IOpti 阅读全文
posted @ 2020-04-07 13:44 前线码农 阅读(197) 评论(0) 推荐(1) 编辑
摘要: 一、扩展步骤 1.实现 IConfigurationProvider class MyConfigurationProvider : ConfigurationProvider { Timer timer; public MyConfigurationProvider() : base() { ti 阅读全文
posted @ 2020-04-07 13:12 前线码农 阅读(429) 评论(0) 推荐(1) 编辑
摘要: 一、文件变更的监听事件 var builder = new ConfigurationBuilder(); builder.AddJsonFile("appsettings.json",false,true); var configurationRoot = builder.Build(); //执 阅读全文
posted @ 2020-04-07 10:42 前线码农 阅读(324) 评论(0) 推荐(1) 编辑
摘要: 一、核心组件包 • Microsoft.Extensions.Configuration. Abstractions • Microsoft.Extensions.Configuration Autofac.Extensions.DependencyInjection Autofac.Extras. 阅读全文
posted @ 2020-04-07 09:57 前线码农 阅读(236) 评论(0) 推荐(0) 编辑