Individuelle Einstellungen zur Konfiguration in .NET

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:

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Wie ein Unternehmen, das Sie noch nicht kennen, eine Revolution in der Cloud-Speicherung anführt

Cubbit ist das weltweit erste Unternehmen, das Cloud-Objektspeicher anbietet. Es wurde 2016 gegründet und bedient…

2 Stunden ago

Dirty Stream: Microsoft entdeckt neuartige Angriffe auf Android-Apps

Unbefugte können Schadcode einschleusen und ausführen. Auslöser ist eine fehlerhafte Implementierung einer Android-Funktion.

6 Stunden ago

Apple meldet Umsatz- und Gewinnrückgang im zweiten Fiskalquartal

iPhones und iPads belasten das Ergebnis. Außerdem schwächelt Apple im gesamten asiatischen Raum inklusive China…

6 Stunden ago

MadMxShell: Hacker verbreiten neue Backdoor per Malvertising

Die Anzeigen richten sich an IT-Teams und Administratoren. Ziel ist der Zugriff auf IT-Systeme.

21 Stunden ago

April-Patches für Windows legen VPN-Verbindungen lahm

Betroffen sind Windows 10 und Windows 11. Laut Microsoft treten unter Umständen VPN-Verbindungsfehler auf. Eine…

22 Stunden ago

AMD steigert Umsatz und Gewinn im ersten Quartal

Server-CPUs und Server-GPUs legen deutlich zu. Das Gaming-Segment schwächelt indes.

1 Tag ago