阅读与阅读在Web.config中编辑配置

时间:2011-05-04 16:34:40

标签: asp.net asp.net-mvc xml configuration web-config

我有一些设置需要从我正在处理的网站的管理面板进行编辑。我认为将这些设置放在web.config中是有意义的(或者我应该将它们放在其他地方吗?)。所以无论如何,我正在尝试编写必要的代码来做到这一点,但是我被卡住了......这是我第一次真的需要这么做...... :)这是我到目前为止所得到的: / p>

Web.config中的appSettings部分:

  <appSettings>
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
    <add key="InvitationOnly" value="true" />
    <add key="MaintainanceMode" value ="false"/>
  </appSettings>

这是我正在尝试编写的一个类,以便轻松检索和修改将放置在appSettings部分内的一些值:

public static class SiteSettings
{
    public static bool InvitationOnly
    {
        get
        {
            var invitation = WebConfigurationManager.AppSettings["InvitationOnly"];
            return Convert.ToBoolean(invitation);
        } 
        set
        {
            Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
            var appSettings = config.GetSection("appSettings") as AppSettingsSection;
            if(appSettings != null)
            {
                //got stuck here...
            }
        }
    }
}

我是否在正确的轨道上?我如何从这里继续?

顺便说一下,在web.config中放置网站设置有多安全?我应该担心什么吗?

谢谢。

1 个答案:

答案 0 :(得分:7)

您绝对不希望每次修改web.config文件时都会重新启动应用程序。如果修改了web.config,ASP.NET会立即卸载AppDomain。 web.config用于存储应用程序的静态,只读配置。如果您需要存储必须修改的设置,则web.config不是正确的位置。您可以使用自定义文件,会话,cookie,数据库......