2
我有這個配置文件:配置文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="AuxAppStg0" value="5 iunie 2013 19:22:49" />
<add key="AuxAppStg1" value="5 iunie 2013 00:00:00" />
<add key="AppStg2" value="5 iunie 2013 19:23:04" />
</appSettings>
</configuration>
而且我想用這個代碼解析它:
// Get the configuration file.
System.Configuration.Configuration config =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
// Get the appSettings section.
System.Configuration.AppSettingsSection appSettings =
(System.Configuration.AppSettingsSection)config.GetSection("appSettings");
foreach (KeyValueConfigurationElement i in appSettings.Settings)
{
Console.WriteLine("Key: {0} Value: {1}", i.Key, i.Value);
}
if (appSettings.Settings.Count != 0)
{
foreach (string key in appSettings.Settings.AllKeys)
{
string value = appSettings.Settings[key].Value;
Console.WriteLine("Key: {0} Value: {1}", key, value);
}
}
else
{
Console.WriteLine("The appSettings section is empty. Write first.");
}
和我得到的是:appSettings部分是空。先寫。 我已經找到它here。我做錯了什麼?我想在啓動時爲c#windows服務創建一個配置文件,這是一個好方法,還有其他更好的方法嗎?
什麼是你的config文件的名字?它應該是服務可執行文件+ .config的名稱,因此'MyWindowsService.exe'應該是'MyWindowsService.exe.config'。它也應該與您的服務可執行文件位於同一個目錄中。您還需要重新啓動您的Windows服務才能獲取文件的更改。 – vcsjones
爲什麼不使用ConfigurationManager.AppSettings? –
@亞光網點良好的捕獲,+1。 – vcsjones