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