标签:指定 ash 14. 使用 [] 不同的 fun https family
我在前面的文章.Net core下的配置设置(一)——Configuration中介绍了.net core下配置文件的读取方法,在.net core中,直接从Configuration对象中读取的并不多,大多是用的配置依赖注入的方式Option,本文这里简单的介绍下它的用法。
首先还是以一个简单的配置文件为例:
{
"section": {
"key1": "value2",
"key2": -5
}
}
如下是读取配置的代码:
static void Main(string[] args) { var configBuilder = new ConfigurationBuilder().AddJsonFile("appsettings.json"); var config = configBuilder.Build(); var service = new ServiceCollection().Configure<ConfigData>(config.GetSection("section")); var provider = service.BuildServiceProvider(); var option = provider.GetService<IOptions<ConfigData>>(); var cfgData = option.Value; } class ConfigData { public string Key1 { get; set; } public int Key2 { get; set; } }
主要步骤如下
看起来更加复杂了, 但这种方式遵循了两个重要软件工程原则:
对于多个应用模块,可能共享同一个配置文件,每个模块但却有不同的配置项。使用这种方式,不同的模块只感知到自己的配置文件,不用感知别的模块的配置,模块依赖更少,功能更加独立,灵活。
另外,Option模式提供了更多的功能:
更多的信息参考官方文档:ASP.NET Core 中的选项模式
标签:指定 ash 14. 使用 [] 不同的 fun https family
原文地址:https://www.cnblogs.com/TianFang/p/10585747.html