Individuelle Einstellungen zur Konfiguration in .NET

Das .NET Framework macht Konfigurationseinstellungen dank XML-basierter Konfigurationen zu einem Kinderspiel. Es bringt auch die erforderlichen Funktionen mit, um auf diese Einstellungen über Collection-Klassen zuzugreifen.

Die eigentlichen Konfigurationsdaten sind über eine statische ConfigurationSettings-Klasse zugänglich. Diese Klasse stellt die Methode GetConfig() bereit, welche ein Objekt zurückgibt, das man in die entsprechende Collection casten kann. Hier sollen verschiedene Methoden für den Zugriff und das Speichern von Konfigurationsinformationen vorgestellt werden.

Konfigurationsdaten für Anwendungen werden in der zugehörigen Datei App.config gespeichert und im configSections-Knoten definiert. Jede Sektion wird durch ein Typattribut definiert. Die drei Typen, um die es hier gehen soll, sind NameValueSectionHandler, SingleTagSectionHandler und DictionarySectionHandler. Man kann auch Sektionsgruppen mit einem sectionGroup-Knoten definieren. Hier ein Beispiel für eine solche Sektionsdefinition:


Sektionsgruppen sind individuelle Sektionen, die in einen sectionGroup-Knoten eingebunden sind. Es folgt ein Beispiel für eine Sektionsgruppe:


Und schließlich werden die Sektionen, die man festlegt, zum Erstellen individueller XML-Knoten verwendet, welche die Konfigurationsdaten speichern. Um Daten zu dieser individuellen Sektion hinzuzufügen fügt man die Sektion einfach als XML-Knoten ein und verwendet die Methode add node, um einer Collection Daten hinzuzufügen. Dazu ein Beispiel für eine NameValueSectionHandler-Sektion:


Der Abschnitt MyCustomSection enthält eine Name/Value-Collection, die aus zwei Einträgen besteht, die über key1 und key2 identifiziert werden.

SingleTagSectionHandlers sind noch einfacher zu erzeugen. Die Sektionsdefinition findet sich wie der NameValueSectionHandler im configSections-Knoten. Aber die Konfigurationsdaten werden, wie der folgende Codeausschnitt zeigt, in SingleTagSectionHandlers auf eine andere Weise hinzugefügt als in NameValueSectionHandlers:


DictionarySectionHandlers ähneln stark NameValueSectionHandlers, außer dass sie Hashtabellen anstelle von NameValueCollections zurückgeben. Normalerweise sind Hashtabellen schneller als NameValueCollections, wenn es um den Zugriff auf umfangreichere Konfigurationsdaten geht. DictionarySectionHandlers sind genauso konstruiert wie NameValueSectionHandlers. Ein Beispiel:


Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Individuelle Einstellungen zur Konfiguration in .NET

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *