你的位置:首页 > 软件开发 > ASP.net > 『随笔』C# 程序 修改 ConfigurationManager 后,不重启 刷新配置

『随笔』C# 程序 修改 ConfigurationManager 后,不重启 刷新配置

发布时间:2016-09-07 16:00:06
基本共识:ConfigurationManager 自带缓存,且不支持 写入。如果 通过 文本写入方式 修改 配置文件,程序 无法刷新加载 最新配置。PS. Web.config 除外:Web.config 修改后,网站会重启 (即 Web 程序 也无法在 运行时 刷新配置)。 ...

『随笔』C# 程序 修改 ConfigurationManager 后,不重启 刷新配置

基本共识:

ConfigurationManager 自带缓存,且不支持 写入。

如果 通过 文本写入方式 修改 配置文件,程序 无法刷新加载 最新配置。

PS. Web.config 除外:Web.config 修改后,网站会重启 (即 Web 程序 也无法在 运行时 刷新配置)。

 

为什么要在程序运行时,修改配置(刷新配置):

> 以前C++,VB 时代,用户在程序界面 勾选的配置,会写到 ini 文件。

> C# 自带 .exe.config 配置文件 —— 但是,C# 自带的 ConfigurationManager 不支持 运行时 修改,运行时刷新配置。

> 本文 提供工具类,彻底 解决 这个问题 —— 从此,用户手动勾选的配置 再也不用写入 ini,而是直接修改 .exe.config 文件,且立即刷新。

 

刷新 ConfigurationManager 配置 的 代码 有两种:

> 第一种:

ConfigurationManager.RefreshSection("appSettings");    //刷新 appSettings 节点 (立即生效)ConfigurationManager.RefreshSection("connectionString");  //刷新 connectionString 节点 (无法生效 —— 可能是 微软处理时,因为 LocalSqlServer 这个默认配置 而导致的疏忽)

原标题:『随笔』C# 程序 修改 ConfigurationManager 后,不重启 刷新配置

关键词:C#

C#
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录