在使用默认asp.net core 配置的情况下
获取配置的时候将IOptions接口替换成IOptionsSnapshot即可
不同于之前的web.config,每次修改之后都要重新启动
默认使用appsettings.json作为配置文件的asp.net core程序默认支持热更新
在Program.cs中的WebHost类替我们完成Configrue的配置
详情参照https://github.com/aspnet/MetaPackages/blob/dev/src/Microsoft.AspNetCore/WebHost.cs
public static IWebHostBuilder CreateDefaultBuilder(string[] args)这个方法
这个方法中我们可以看到如下代码
.AddJsonFile($"appsettings.json", optional: true, reloadOnChange: true);
其中optional为是否为可选的,选择true则可以在没有appsettings.json的时候不抛出异常
reloadOnChange为时候支持热更新,true为支持
如果我们希望将应用程序改为不支持热更新,则需要对Program.cs的
CreateWebHostBuilder方法做出如下修改
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureAppConfiguration(config=> {
config.AddJsonFile($"appsettings.json", optional: true, reloadOnChange: false);
})
.UseStartup<Startup>();