winform 运行中修改了配置信息,怎么重新读取配置文件

winform 运行中修改了配置信息,怎么重新读取配置文件,第1张

这是因为你程序运行时,已经将配置文件中的信息加载到了内存中,之后每次读取时如果缓存中已经存在对应的值,则直接使用此值,否则才会从文件中读配置,这样做的好处是减少了系统和文件甚至与数据库的交互次数;

在web程序中配置文件更改后,应用程序会自动重启一次,于是配置会自动生效。但winform程序没有这个机制,于是Configuration.ConfigurationManager调用配置不会自动更新。

所以建议你手动实现调用配置的逻辑,代码如下:

public string ReadAppSetting(string key)

{

string xPath = "/configuration/appSettings//add[@key='"+key+"']"

XmlDocument doc = new XmlDocument()

string exeFileName = System.Reflection.Assembly.GetExecutingAssembly().GetName().Name

doc.Load(exeFileName + ".exe.config")

XmlNode node = doc.SelectSingleNode(xPath)

return node.Attributes["value"].Value.ToString()

}

这样做的话就不存在缓存的问题了,希望能对你有所帮助。

说明配置文件中的连接字符串似乎没有取得,可以跟踪一下,看看为什么没有取到连接字符串, 可能哪里出了点问题。另外创建了连接还要OPEN才可以使用哦,否则会提示“未将对象的设置引用到对象的实例”以下是取配置文件中字符串的一个例子可以对照一...

ini config xml等都可以作为配置文件。

你说的是自带的web.config文件吧?

它的读取很复杂,有些标签很好读,有的就复杂,因为配置节太多,更重要的是,web.config是微软提供的,需要高度安全的配置文件,所以在一些配置节的 *** 作上,不提供写,xml文件的写入都是通过先删除在添加的形式,所以这是不提供删除没就没办法完成写入。最好用其他文件做配置文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11575041.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存