配置的热更新

基于上一节 Bind,Options读取配置到C#实例 项目基础之上完善配置的热更新

什么事热更新,当修改Appsettings.json文件数据后,后面的请求会自动加载最新数据,

与以往不同的是网站不回重新启动,其原理是分配了一个线程监视文件的修改,适用于配置文件经常变动的部署

只需要将上一节的依赖注入的控制器的IOptions<Class>改为IOptionsSnapshot<Class>

 

public class HomeController : Controller
    {
        private readonly Class _myclass;
        //Options
        public HomeController(IOptionsSnapshot<Class> classAccesser)
        {
            this._myclass = classAccesser.Value;
        }
}

 

网站默认是启动一个线程跟踪文件的如果业务不需要也可以关闭它在Program-》BuildWebHost方法中

public class Program
    {
        public static void Main(string[] args)
        {
            BuildWebHost(args).Run();
        }

        public static IWebHost BuildWebHost(string[] args) =>
            WebHost.CreateDefaultBuilder(args)//会默认将appsettings.json 读取
                   .ConfigureAppConfiguration(config => config.AddJsonFile("Appsettings.json", false, false))
                //上面是重新设置读取APPsetting,然后关闭热更新 
                .UseStartup<Startup>()
                .Build();
    }
AddJsonFile方法重载
方法重载,1文件夹2当不存在的时候是否抛异常3当文件改变时是否重新加载配置

 

转载于:https://www.cnblogs.com/AnkerZhang/p/8359138.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值