在外部app.config文件中使用自定义部分

时间:2016-01-29 14:39:25

标签: c# asp.net .net app-config

我一直在尝试使用我的App.config一段时间了,现在我设法将外部设置为我的配置文件,我能够读取/写入此文件的appSettings部分。现在我可以为其他部分的键使用不同的名称,但我更喜欢使用另一部分。 ConfigurationManager.getSection()似乎没有工作,我得到一个“ConfigurationErrorsException”。

我的代码:

ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap();
configFileMap.ExeConfigFilename = path + "app.config";
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None);

// Reading:
string value = config.AppSettings.Settings["key"].Value

// Writing:
var settings = config.AppSettings.Settings;
if (settings["key"] == null)
    settings.Add("key", "value");
else
    settings["key"].Value = "value";

我试过

var settings = config.Sections["section"];
string value = settings["key"];

但由于“保护程度”,这不起作用。 关于如何做到的任何想法?

更新:

解决了!刚刚使用

type="System.Configuration.AppSettingsSection"
在app.config中

并获取/设置值:

var settings = ((AppSettingsSection)config.GetSection(section)).Settings;

0 个答案:

没有答案