课件和 Demo 地址
https://gitee.com/geektime-geekbang/NET-Core
作者回复: 使用选项框架,仅对服务注入它用到的值。 服务依赖配置框架,意味着它有可能使用配置中的任意值。 服务应该只依赖它使用到的配置或接口
作者回复: .NET 没人用的结论是从哪里的出来的 不否认spring boot的设计非常精妙,但ASP.NET Core的设计也是非常体系化和精巧,在kubernetes流行的当下,.NET生态能够很便捷地实现微服务架构,何乐而不为呢。
作者回复: 即服务类型与实现类型是相同的情况,例如一个未实现任何接口的服务
作者回复: 感谢指正,内置的配置优先级高到低是: 命令行配置 环境变量配置 文件配置 自定义配置建议在Program.cs 使用IHostBuilder的ConfigureAppConfiguration方法
作者回复: 感谢提醒,确实如此,尽量避免使用静态的属性获取配置,这样的代码不利于扩展和测试。 使用注入的方式可以让代码对单元测试优化,也易于重构和扩展。
作者回复: 最后的部分会全部串起来讲,包括部署
作者回复: IOptions<T> 这里的配置对象一般是POCO类型,不应该是IDisposable的。 另外 IOptions<T> 和IOptionsMonitor<T> 都是单例。 IOptions<T>读取到的值永远不会变。 IOptionsMonitor<T>读取到的值,会是配置变化后的值,也就是会保持是新值。
作者回复: 优先级高到低: 环境变量配置 命令行配置 文件配置