zoukankan      html  css  js  c++  java
  • windows服务获取config更新后的value值解决办法

    一、前言
         在建立的windows服务中,正式发布之前需要不断测试,这个时候就需要频繁的更改app.config配置文件,但是问题就出来了,更新配置文件之后,并没有立即生效,而是取到更改前的值,原因究竟出在哪里.....

    二、无法读取更改后的写法

    更改之前 获取config的写法 string TimeValue= ConfigurationManager.AppSettings["TimeValue"];


         这个确实没有,立即检查原因,为什么更改之后没有立即生效,先停掉服务、重新编译项目,然后再启动服务,这个时候发现没有问题。 问题也确实解决了,但是这样的解决办法实在是太慢了。

    三、分析得出结论

         更改配置文件之后,他读取的顺序不是从物理文件读取,必须强制刷新配置文件,才能读取到更改后的配置节信息  

    四、正确的写法

    更改之后 获取config的写法private string timeValue;
            public string TimeValue
            {
                get
                {
                    ConfigurationManager.RefreshSection("appSettings");                  
                    dtSend = ConfigurationManager.AppSettings["TimeValue"];
                    return timeValue;
                }            
            }


        
    五、原因

            为什么要加上ConfigurationManager.RefreshSection("appSettings");
     元数据的解释是这样的:刷新命名节,这样在下次检索它时将从磁盘重新读取。
                  
    六、结束

     

        如果有错误,请各位指点,谢谢!

        希望这篇文章能给你带来帮助。

         原文来自:http://stackoverflow.com/questions/590791/do-you-have-to-restart-a-windows-service-if-you-change-the-app-config/2743097#2743097

         同步发表于:伊牛娃的博客

  • 相关阅读:
    Linux常用技巧
    Python2 Python3 urllib方法对应
    Python常用技巧
    aix7安装was7、打补丁、更改访问端口、手动启动was、配置was7、部署项目
    微服务解释
    Java集合框架介绍。Java Collection Frameworks = JCF
    从今日起,坚持记录博客。
    java web 监控cpu、内存等。hyperic-sigar
    java线程中如何使用spring依赖注入
    java 下载文件 内容为空。
  • 原文地址:https://www.cnblogs.com/VincentLuo/p/1725174.html
Copyright © 2011-2022 走看看