我正在学习如何在 .NET 中使用 System.Configuration,并且想知道是否有一种方法可以在我的 web.config 文件中无限嵌套配置设置。

假设我有两种类型的对象 - 页面和页面组。页面代表我网站上的真实页面,页面组代表页面和(可能)其他页面组的集合。

我的 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(或任何其他适用的 ConfigurationClasses)?

有帮助吗?

解决方案

您基本上有两种不同类型的项目需要处理:

  • A ConfigurationSectionGroup 是其他元素的容器,尤其是配置节(或其他配置节组)。节组本身没有任何配置属性或属性 - 它只是配置节的容器

  • ConfigurationSection 是可以包含属性、元素、集合等的项目。与您要存储的实际配置设置

据我所知,您可以根据需要嵌套配置节组,但不能在配置节内嵌套任何内容。

要获得精彩的介绍和大量背景信息,请查看 CodeProject 上 Jon Rista 关于 .NET 2.0 配置的三部分系列。

强烈推荐,写得很好,非常有帮助!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top