在web.config中嵌套配置元素
问题描述:
我正在学习如何在.NET中使用System.Configuration,并想知道是否有方法可以在我的web.config文件中无限嵌套配置设置。在web.config中嵌套配置元素
比方说,我有两种类型的对象 - 页面和PageGroup。页面代表我网站上的真实页面,PageGroup代表页面和(可能)其他PageGroups的集合。
我的web.config文件中可能包含这样的内容:
<pagegroup name="outer_group"> <page name="page1" url="page1.htm" /> <page name="page2" url="page2.htm" /> <pagegroup name="middle_group"> <page name="page3" url="page3.htm" /> <pagegroup name="inner_group"> ...and so on... </pagegroup> </pagegroup> </pagegroup>
我有限的配置类的理解使我相信这不是他们设计的 - 但我希望我错误。
是否可以以这种方式使用ConfigurationElementCollections和ConfigurationElements(或任何其他适用的ConfigurationClass)?
答
你基本上有两种不同类型的项目来处理:
一个
ConfigurationSectionGroup
是其他元素,最明显的是配置部分(或其他配置节组)的容器。该部分组本身没有任何配置属性或属性 - 它只是配置部分的容器ConfigurationSection
是可以包含属性,元素,集合等与您想要的实际配置设置store
据我所知,你可以根据需要嵌套配置节组,但是你不能在配置节中嵌套任何东西。
对于一个伟大的介绍和大量的背景信息,请查看Jon Rista的关于.NET 2.0配置的三部分系列,上CodeProject。
- Unraveling the mysteries of .NET 2.0 configuration
- Decoding the mysteries of .NET 2.0 configuration
- Cracking the mysteries of .NET 2.0 configuration
强烈推荐,写得很好,非常有帮助!