Frage

Ich lerne, wie System.Configuration in .NET verwenden und würde gerne wissen, ob es eine Möglichkeit, unendlich Nest Konfigurationseinstellungen in meiner web.config-Datei.

Lassen Sie uns sagen, ich habe zwei Arten von Objekten - eine Seite, und eine PageGroup. Eine Seite stellt eine echte Seite auf meiner Seite, und ein PageGroup stellt eine Sammlung von Seiten und (möglicherweise) anderen PageGroups.

Meine web.config-Datei könnte etwas enthalten wie:

<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>

beschränkt Mein Verständnis von Klassen-Konfiguration führt mich zu glauben, dass dies nicht das, was sie für entworfen wurden -. Aber ich hoffe, dass ich falsch

Ist es möglich, ConfigurationElementCollections und ConfigurationElements zu verwenden (oder andere anwendbare ConfigurationClasses) auf diese Weise?

War es hilfreich?

Lösung

Sie haben grundsätzlich zwei verschiedene Arten von Gegenständen zu behandeln:

  • a ConfigurationSectionGroup ist ein Container für andere Elemente, insbesondere Konfigurationsabschnitte (oder andere Konfigurationsabschnitt Gruppen). Der Abschnitt Gruppe selbst hat keine Konfigurationseigenschaften oder Attribute - es ist nur ein Container für Konfigurationsabschnitte

  • die ConfigurationSection ist das Element, das Attribute, Elemente, Sammlungen etc. mit den tatsächlichen Konfigurationseinstellungen, die Sie speichern möchten

  • enthalten

Soweit ich weiß, Sie Abschnitt Gruppen Nest Konfiguration so tief wie Sie müssen, aber Sie können nicht verschachtelt alles in einem Konfigurationsabschnitt.

Für eine große Intro und viele Hintergrundinformationen Besuche Jon Rista der dreiteiligen Serie auf .NET 2.0-Konfiguration auf Codeproject auf.

Sehr empfehlenswert, gut geschrieben und sehr hilfreich!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top