c# Winform 应用程序在执行过程中修改了app.config的内容后,怎样使它及时生效???

修改成功以后必须得重启程序才能生效,看别人写的一个程序及时就能生效,我该怎么写

在程序运行时,用户修改了某个配置后,立即应用到程序。例如,在app.config有一个配置项,用来定制应用程序窗口标题,如下所示
 <appSettings>
     <add key="appTitle" value="远程监控系统"/>

</appSettings>

假设你为用户提供了修改程序标题的界面,当用户修改了程序标题,比如修改为“燃气轮机远程监控系统”

1)首先,立即让修改立即生效:

fromMain.Text = “燃气轮机远程监控系统";  // 新的程序标题

2)其次,保存这个配置项

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["appTitle"].Value = “燃气轮机远程监控系统";  // 新的程序标题
config.Save();

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-07
app.config修改后都要重启的吧。

或者 直接鼠标移到变量上,会出来一行显示变量的值。这时候你就可以修改这个变量的值。
第2个回答  2013-10-07
常规情况:app.config只会在应用程序启动时加载一次。

我给你提供一种思路:
把你要经常修改的配置放在另外一个xml文件里面,
你去读xml里面的配置,用一次,读一次,
这样就是即时生效的了。追问

config 文件,我里面放的是数据库的连接字符串,假如我打开程序时点击登录,这时连接字符串出现问题,弹出修改连接字符串的窗口,我把值修改完以后,点击保存,然后继续登录,就登录不了,得重启之后才能生效,怎么能实现不重启就能生效呢?

追答

我说的意思是连接字符串不要存在app.config里面了,
放在另外的xml里面,你保存也好,读取也好,都是即时的。

你看看@protorock0627的方法是否可行?
不行的话再用读取xml的方式。

本回答被提问者采纳
相似回答