c#winform怎么写本地配置文件

c#winform怎么写本地配置文件,第1张

配置文件可以是任何形式,可以是xml或者txt都行,比如数据库的连接配置

比如:

<?xml version="1.0" standalone="yes"?>//这句一定要有,下面的你随意写

<configuration>

<startup>

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />

</startup>

<connectionStrings>

<add name="DBConnectionString" connectionString="Data Source=192.168.118.21Initial Catalog=PreMixUser Id =saPassword =sa" providerName="System.Data.SqlClient" />

</connectionStrings>

</configuration>

这就是个配置文件,在winform里面直接用DataSet的ReadXml()方法就能读取到里面的值,

简单例子:

<?xml version="1.0" standalone="yes"?>//这句一定要有,下面的你随意写

<a>

<b>你好啊!</b>

</a>

然后你在winform里DataSet的ReadXml(XML文件路径),然后得到的就是a表里的b列的数据,就是你好啊!,就得到了,看看表的视图就清楚了。不懂继续追问

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

在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()

}

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


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

原文地址: http://outofmemory.cn/tougao/11581299.html

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

发表评论

登录后才能评论

评论列表(0条)

保存