asp.net – 无法识别的配置部分
发布时间:2020-12-16 04:00:59 所属栏目:asp.Net 来源:网络整理
导读:我创建了一个自定义配置部分,如下所示 configSections /configSections Tabs Tab name="Dashboard" visibility="true" / Tab name="VirtualMachineRequest" visibility="true" / Tab name="SoftwareRequest" visibility="true" / /Tabs 自定义配置节处理程序
我创建了一个自定义配置部分,如下所示
<configSections> </configSections> <Tabs> <Tab name="Dashboard" visibility="true" /> <Tab name="VirtualMachineRequest" visibility="true" /> <Tab name="SoftwareRequest" visibility="true" /> </Tabs> 自定义配置节处理程序 namespace EDaaS.Web.Helper { public class CustomConfigurationHandler : ConfigurationSection { [ConfigurationProperty("visibility",DefaultValue = "true",IsRequired = false)] public Boolean Visibility { get { return (Boolean)this["visibility"]; } set { this["visibility"] = value; } } } } 运行应用程序时抛出异常无法识别的配置部分选项卡.如何解决这个问题 解决方法
您需要编写一个
configuration handler 来解析此自定义部分.然后在配置文件中注册此自定义处理程序:
<configSections> <section name="mySection" type="MyNamespace.MySection,MyAssembly" /> </configSections> <mySection> <Tabs> <Tab name="one" visibility="true"/> <Tab name="two" visibility="true"/> </Tabs> </mySection> 现在让我们定义相应的配置部分: public class MySection : ConfigurationSection { [ConfigurationProperty("Tabs",Options = ConfigurationPropertyOptions.IsRequired)] public TabsCollection Tabs { get { return (TabsCollection)this["Tabs"]; } } } [ConfigurationCollection(typeof(TabElement),AddItemName = "Tab")] public class TabsCollection : ConfigurationElementCollection { protected override ConfigurationElement CreateNewElement() { return new TabElement(); } protected override object GetElementKey(ConfigurationElement element) { if (element == null) { throw new ArgumentNullException("element"); } return ((TabElement)element).Name; } } public class TabElement : ConfigurationElement { [ConfigurationProperty("name",IsRequired = true,IsKey = true)] public string Name { get { return (string)base["name"]; } } [ConfigurationProperty("visibility")] public bool Visibility { get { return (bool)base["visibility"]; } } } 现在您可以访问设置: var mySection = (MySection)ConfigurationManager.GetSection("mySection"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 伤害表现吗?
- asp.net – ‘没有重载的方法’ToString’采取’1’参数’错
- asp.net-mvc – ASP.NET MVC CookieTempDataProvider:有什
- asp.net-mvc – ASP.Net MVC输出缓存:指令或配置设置配置文
- 什么是Application Server for ASP.NET?
- asp.net – 是否有相当于mod_pagespeed Apache模块的IIS?
- asp.net – 如何将HTML片段(作为委托?)传递给声明性Razor
- iCalendar格式中关于RRule的解析和生成
- 使用StateServer的ASP.NET会话混合(SCARY!)
- 用asp.net core 2.0 + EFCore.Sqlite做个小网站
推荐文章
站长推荐
- .net – 如何检查用户是属于AD组还是嵌套组?
- asp.net-core – MVC 6中的自定义Razor视图引擎
- asp.net – 为什么我的项目引用不被Visual Studi
- 谈谈基于SQL Server 的Exception Handling
- asp-classic – IIS Express是否支持ASP Classic
- asp.net-mvc-2 – 无法加载文件或程序集’System
- asp.net-mvc-3 – 为什么asp.net mvc模型绑定器生
- 如何从ASP.NET MVC中的后台线程解析应用程序URL?
- asp.net-mvc – 使用其他bool字段进行MVC远程验证
- asp.net – File.Exists从网络共享返回false
热点阅读