.NET Core读取配置文件方式详细总结

在.NET Core框架下,读取配置文件的方式与之前的.NET Framework有所不同。之前的.NET Framework采用XML的config文件,而.NET Core主要采用JSON文件键值对配置方式读取。下面将对.NET Core中读取配置文件的方式进行总结。 一、引入扩展System.ConfigurationManager 通过Nuget下载扩展Install-Package System.ConfigurationManager,使用方式:在项目中添加App.config配置文件。读取方式与原.NET Framework方式一致。这种方式的优点是兼容.NET Framework原有配置方式,但缺点是项目运行过程中若需修改App.config文件,对项目中输出的内容没有丝毫影响,Debug发现获取到的值的确没有变化,需要重新编译才生效。 二、引入扩展Microsoft.Extensions.Options.ConfigurationExtensions 通过Nuget下载扩展Install-Package Microsoft.Extensions.Options.ConfigurationExtensions, Install-Package Microsoft.Extensions.Configuration.FileExtensions, Install-Package Microsoft.Extensions.Configuration.Json。使用方式:参考微软官网。这种方式的优点是可以读取application.json中的配置参数,不再使用XML可以说很好的贴近Core的设计理念。缺点是运行时修改json文件读取到的内容不会改变,但是至少重启项目可以修改,若要运行时候修改json文件监听实现监听变化。查看源码,可以发现虽然配置信息是通过AddSingleton注入的但同时也注入了IOptionsChangeTokenSource,故只需要在获取配置信息时将IOptions替换为IOptionsMonitor(通过监听的Option来获取信息),并通过IOptionsMonitor.CurrentValue获取即可实时获取到最新的配置信息(存在修改监听)。 三、自定义扩展方法 这个实现自己写,原理是监听文件是否变更,来
docx 文件大小:75.03KB