在xml中创建自己的设置

我在一个ASP.NET项目中,我需要向管理员提供几个参数来安装网站,例如:

AllowUserToChangePanelLayout AllowUserToDeleteCompany 

等等…

我的问题是,将这个添加到web.config文件中,使用我自己的configSession或添加为配置文件varibles会是一件好事吗? 或者我应该为此创建一个XML文件?

你做了什么,有什么缺点和好处?

我最初想到的是web.config,但后来我意识到我应该搞乱网站配置和我自己的网络应用程序配置,我应该创建一个不同的文件,我读这篇文章 ,现在我在这个地方……我应该这样做还是那个?

我通常使用设置 – 通过项目属性 – 设置可用。 这些可以编辑并保存在代码中,我写一个表单/网页来编辑它们。

如果要使用XML配置,则会有一个名为file的属性读取外部文件。 您可以拥有web.config文件和someothername.config文件。 someothername.config将具有以下设置:

     

而web.config会有

       

有关我偷走的示例,请参阅DevX 。

只是为了让你们知道我做了配置器推荐但有一点扭曲。

而不是一直询问(我需要)

 System.Configuration.ConfigurationManager.AppSettings["myKey"]; 

我刚刚创建了一个静态类,它将使用强类型值调用的值来提取这些值(因此您不需要记住所有值)

mySettings

 public static class mySettings { public enum SettingsType { UserPermitions, WebService, Alerts } public enum SectionType { AllowChangeLayout, AllowUserDelete, MaximumReturnsFromSearch, MaximumOnBatch, SendTo } public static String GetSettings(SettingsType type, SectionType section) { return ConfigurationManager.AppSettings[ String.Format("{0}_{1}", Enum.Parse(typeof(SettingsType), type.ToString()).ToString(), Enum.Parse(typeof(SectionType), section.ToString()).ToString()) ]; } } 

web.config appSettings部分

          

整个myApp.config文件

                  

那么,现在我这样称呼:

 p.value = mySettings.GetSettings( mySettings.SettingsType.WebService, mySettings.SectionType.MaximumReturnsFromSearch); 

希望能帮助有同样问题的人:)

您也可以将配置放在设置文件中。 在您的项目中,打开“属性”并转到“设置”, 如下所示

要访问代码中的值,请使用Properties.Settings.YourSettingName;

使用Properties.Settings.Default.Reload(); 在运行时刷新您的设置