2
好的,所以我试图使用App.Config
文件中的appSettings
元素来确定要使用的存储类型。永久修改App.config C#
这里是我的的app.config文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<appSettings>
<add key="storage" value="memory"/>
</appSettings>
</configuration>
所以我想改变存储的值“设定”为“XMLFILE”,所以我写了这个方法来改变以下一些领域文章中,我发现在互联网上:
public static void UpdateAppSettings(string keyName, string keyValue)
{
XmlDocument doc = new XmlDocument();
doc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
foreach (XmlElement elem in doc.DocumentElement)
{
if (elem.Name == "appSettings")
{
foreach (XmlNode node in elem.ChildNodes)
{
if (node.Attributes[0].Value == keyName)
{
node.Attributes[1].Value = keyValue;
}
}
}
}
doc.Save(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
}
如何以往当我使用它,还有就是在app.config没有变化。关于我在做什么的任何想法都是错误的?
P.S.
仅作参考我只使用以下简单的方法来测试它:
Console.WriteLine(ConfigurationManager.AppSettings["storage"].ToString());
Console.Read();
AppConfigFileSettings.UpdateAppSettings("storage", "xmlfile");
Console.WriteLine(ConfigurationManager.AppSettings["storage"].ToString());
Console.Read();
刚刚打印出的“记忆”的两倍。
哇,很好。我不知道这是可能的。所以可以在运行时改变所有的配置。 – SwissCoder 2010-09-08 11:49:32