如何通过C#更改web.config中的applicationSettings

时间:2013-01-10 10:17:02

标签: c# asp.net configuration web-config application-settings

我想通过C#更改web.config。

我的Web.config

 <?xml version="1.0" encoding="utf-8"?>

    <!--
      Weitere Informationen zum Konfigurieren der ASP.NET-Anwendung finden Sie unter
      "http://go.microsoft.com/fwlink/?LinkId=169433"
      -->

    <configuration>
        <configSections>
            ...
        </configSections>
        <system.web>
            ...
        </system.web>

        <applicationSettings>
            <AdminTest.Properties.Settings>
                <setting name="AD_Admin" serializeAs="String">
                    <value>GastzugangAdmin</value>
                </setting>
                <setting name="AD_User" serializeAs="String">
                    <value>GastzugangUser</value>
                </setting>
            </AdminTest.Properties.Settings>
        </applicationSettings>
    </configuration>

使用字符串ADAdmin = Properties.Settings.Default.AD_Admin;,我可以从web.config获取值,但我不知道如何覆盖它。我试试这个。

protected void btnCon_Click(object sender, EventArgs e)
        {
            string con = txtCon.Text;

            try
            {
                ConfigurationManager.AppSettings.Set("AD_Admin", con);
                Settings.Default.Save();

            }
            catch (Exception)
            {

            }

        }

但我不行。

1 个答案:

答案 0 :(得分:0)

.NET Fx中有用于修改配置的配置API,您可以使用相同的配置。例如,选中WebConfigurationManager

var config = WebConfigurationManager.OpenWebConfiguration("~/web.config");
config.AppSettings["xyz"] = value;
config.Save();

请注意,每当您保存配置时,都会重新启动您的Web应用程序。