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
Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.
Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…
Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…
Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…
Hinter 84 Prozent der Zwischenfälle bei Herstellern stecken Schwachstellen in der Lieferkette. Auf dem Vormarsch…
Es kommt angeblich 2028 auf den Markt. Das aufgeklappte Gerät soll die Displayfläche von zwei…