通过c#代码将appSettings部分添加到web.config

时间:2012-12-05 13:46:26

标签: c# .net web-config

我只是通过此代码

读取web.config文件
Configuration configuration = WebConfigurationManager.OpenWebConfiguration("~");

AppSettingsSection appSettingsSection = (AppSettingsSection)configuration.GetSection("appSettings");

if (appSettingsSection != null)
{
         appSettingsSection.Settings.Remove(key);
         config.Save();
}

appSettings文件中存在web.config时,它可以正常工作。

我的查询是在appSettings文件中添加web.config标记(如果不存在)。

2 个答案:

答案 0 :(得分:1)

这里我添加了值为“myValue”的新应用程序密钥“myKey”:

        System.Configuration.KeyValueConfigurationCollection settings;
        System.Configuration.Configuration config;

        System.Configuration.ExeConfigurationFileMap configFile = new System.Configuration.ExeConfigurationFileMap();
        configFile.ExeConfigFilename = "App.config";
        config = System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(configFile, System.Configuration.ConfigurationUserLevel.None);
        settings = config.AppSettings.Settings;

        config.AppSettings.Settings.Add(new System.Configuration.KeyValueConfigurationElement("myKey", "myValue"));
        config.Save();

所以重点是加载特定的配置(在你希望的时候添加appSettings),添加新的密钥并保存。

快乐的编码!

答案 1 :(得分:0)

您可以检查web.config是否有appSettings标记,或者不是这样;

string s = ConfigurationManager.AppSettings["appSettings"];

if (!String.IsNullOrEmpty(s))
{
    // Key exists
}
else
{
    // Key doesn't exist
}

我找不到添加动态appSettings标签的任何内容,但找到了关于.NET配置的三部分系列,这可能非常有用。