asp.net core 配置文件热更新

在使用默认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"optionaltruereloadOnChangetrue);


其中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();




你可能感兴趣的:(.Net,Core)