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的方式。

本回答被提问者采纳

c# Winform 应用程序在执行过程中修改了app.config的内容后,怎样使它及...
把你要经常修改的配置放在另外一个xml文件里面,你去读xml里面的配置,用一次,读一次,这样就是即时生效的了。

C# app.config 不起作用.
错了,小伙子,App.config一般是存放数据库连接字符串的,它是为了在程序打包安装后装在客户电脑上,改动它的server=服务器的ip地址,起到链接服务器的作用。程序开发阶段写的要么是127.0.0.1,要么就是.或者local,这样就达不到C\/S模式的作用了。你说的情况应该是在程序开发阶段,没错,C#.NET不...

外部修改C#Winform程序配置文件后Winform程序通过ConfigurationManager...
在web程序中配置文件更改后,应用程序会自动重启一次,于是配置会自动生效。但winform程序没有这个机制,于是Configuration.ConfigurationManager调用配置不会自动更新。所以建议你手动实现调用配置的逻辑,代码如下:public string ReadAppSetting(string key){ string xPath = "\/configuration\/appSettings\/\/add[@key...

C# winform 想动态修改config文件,config里面没有变呢
你上面的代码改的是xx.vshost.exe.config(而不是xx.exe.config),Configuration没有提供直接改原始配置文件的方法,如果你非要改,只能用File去处理这个文件(而且只能下次才生效了,因为这次启动后,程序读取的就只有xx.vshost.exe.config

c#什么时候读取app.config
app.config是C#中桌面应用程序的一般性配置文件,在控制台应用、winform、WPF中,配置文件是以app.config命名的,WEB项目中一般以web.config命名。你先要明白配置文件的作用:配置文件的作用是在部署后,允许用户去更改一些配置项, 最常见的应用就是数据库连接地址。比如我有一个项目,开发过程中,我连接...

C#控制台程序怎样读写app.config中的数据
首先在App.config中添加如下代码 <?xml version="1.0" encoding="utf-8" ?><configuration> <appSettings> <add key="ImgPath" value="D:\\img\\" \/> <\/appSettings><\/configuration>然后引用System.Configuration 然后调用 String str = ConfigurationManager.AppSettings["ImgPath"];...

c# WinForm 怎么保存应用程序的配置?
你可以自己定义一个配置文件,自己起个名字.程序运行时判断有没有这个配置文件,有的话读取配置.没有就使用默认配置.然后创建配置文件,写入默认配置.至于配置文件,可以保存在程序目录中.还有,配置如果很少,也可以写到注册表中.不过不知道杀毒软件会有什么反应.你如果不想别人看配置内容.还可以对它进行加密....

Web.config 和 App.config 的区别分析
如果你对web.config进行了修改,你的web应用程序将立即加载新的web.config。而当你对app.config进行了修改,必须重新启动桌面应用程序,app.config才能生效。我在一些资料上找到了以下一些东西,但不能确定两者之间会不会还有其他的不同:app.config,顾名思义,是桌面应用程序的配置文件,它不能用于Class...

简述C#中应用程序集的装载过程
当CLR需要加载程序集时,实际执行的逻辑比在Bin文件夹中查找更复杂。这是执行的实际逻辑(有关详细说明,请参见Microsoft文档):1. 根据配置文件(app.config或web.config)确定需要加载的程序集的版本。该配置文件的名称为(在生成之后)[executable name].exe.config或web.config。绑定重定向在这里发挥...

vs2010下C# WinForm 解决方案里面生成的文件都是什么作用?干什么的?
Settings.settings是与项目有关的配置信息,与app.config有关系。Setting.Designer.cs是配置信息的C#代码访问代码。app.config是用户可配置的文件。与Settings有关。ControlExtended.cs是应用逻辑代码。FormIcon.ico是程序用到的ico文件。frmChat.cs是窗口文件。frmChat.Designer.cs是窗口的设计器生成的代码...

相似回答