Domanda

sto imparando come utilizzare System.Configuration in .NET e vorrei sapere se c'è un modo per infinitamente impostazioni di configurazione nido nel mio file web.config.

Diciamo che ho due tipi di oggetti - una pagina, e un gruppo di pagine. A Page rappresenta una vera e propria pagina sul mio sito, e di un gruppo di pagine rappresenta un insieme di pagine e (possibilmente) altri PageGroups.

Il mio file web.config potrebbe contenere qualcosa come:

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

La mia comprensione limitata di classi di configurazione mi porta a credere che questo non è ciò che essi sono stati progettati per -. Ma spero che mi sbaglio

E 'possibile utilizzare ConfigurationElementCollections e ConfigurationElements (o qualsiasi altro ConfigurationClasses applicabile) in questo modo?

È stato utile?

Soluzione

Hai sostanzialmente due diversi tipi di elementi per affrontare:

  • un ConfigurationSectionGroup è un contenitore per altri elementi, più in particolare sezioni di configurazione (o altri gruppi sezione configurazione). Il gruppo di sezioni in sé non ha alcuna proprietà di configurazione o attributi - è solo un contenitore per sezioni di configurazione

  • la ConfigurationSection è l'elemento che può contenere attributi, elementi, collezioni ecc con le impostazioni di configurazione reali che si desidera memorizzare

Per quanto ne so, è possibile gruppi di sezioni di configurazione nido profondo come è necessario, ma non si può nido nulla all'interno di una sezione di configurazione.

Per una grande intro e un sacco di informazioni di sfondo, controlla serie in tre parti di Jon Rista su .NET 2.0 di configurazione su CodeProject.

Altamente raccomandato, ben scritto e estremamente disponibile!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top