Tag: webconfigurationmanager

使用.Net配置框架加载具有所需子ConfigurationElement的ConfigurationSection

我有一个控制台应用程序试图从web.config文件加载CustomConfigurationSection。 自定义配置部分具有所需的自定义配置元素。 这意味着当我加载配置部分时,如果配置中不存在该配置元素,我希望看到exception。 问题是.NET框架似乎完全忽略了isRequired属性。 因此,当我加载配置部分时,我只创建自定义配置元素的实例并将其设置在配置部分。 我的问题是,为什么会发生这种情况? 我希望GetSection()方法触发ConfigurationErrorsexception,因为配置中缺少必需的元素。 这是我的配置部分的外观。 public class MyConfigSection : ConfigurationSection { [ConfigurationProperty(“MyConfigElement”, IsRequired = true)] public MyConfigElement MyElement { get { return (MyConfigElement) this[“MyConfigElement”]; } } } public class MyConfigElement : ConfigurationElement { [ConfigurationProperty(“MyAttribute”, IsRequired = true)] public string MyAttribute { get { return this[“MyAttribute”].ToString(); } } } 这是我加载配置部分的方法。 class Program { […]

有人可以提供快速的App.config / Web.config教程吗?

我以前曾经多次使用过这两个配置文件,但我从来没有花时间完全理解它们是如何工作的。 正如大多数人所做的那样,我理解了如何调用WebConfigurationManager.AppSettings[“key”]来获取配置值的基础知识。 以下是我提出的一些问题: 在类库中引用配置值时会发生什么,并且库是更大解决方案的一部分? 是否需要将app.config复制到输出目录才能找到变量? (我假设是的) 你能直接在另一个类库中使用app.config的配置值吗? 假设问题3为“是”,如果来自不同库的多个app.config文件包含具有相同键的配置值,会发生什么? 引用web.config但在类库中会发生什么? 当您引用app.config但在网站或Web应用程序项目中时会发生什么?

System.Web.Configuration.WebConfigurationManager和System.Configuration.ConfigurationManager之间的行为差​​异

我在使用ASP.NET网站的测试服务器上遇到了一些麻烦。 我搞错了,并且默认网站的主目录指向了错误的位置。 当我尝试: ConfigurationManager.ConnectionStrings[“connectionString”]; 它返回null,但是 using System.Web.Configuration; /* … */ var rootWebConfig = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); rootWebConfig.ConnectionStrings.ConnectionStrings[“connectionString”].ConnectionString;` 返回正确的连接字符串。 这两种方法之间有什么区别? 编辑:我真正要问的是,为什么在主目录设置不正确时ConfigurationManager方法失败,否则成功,并且无论主目录是否正确设置, WebConfigurationManager成功? 是否存在其他差异,例如关于访问控制的假设?