Das Attribut configSource ermöglicht es, Konfigurationsdateien auf mehrere Dateien zu verteilen.
Werden zu einer Applikation benutzerdefinierte Konfigurationsabschnitte hinzugefügt, so werden diese üblicherweise in die Standard Konfigurationsdatei app.config eingefügt. Das XML-Attribut configSource erlaubt es, diesen Bereich in eine andere Datei auszulagern. Bei dem folgenden Beispiel wurde der Bereich mySection in die Datei myApp.config ausgelagert.
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="mySection"
type="MySection.MyConfigurationSection, MyConfigurationSection"/>
</configSections>
<mySection configSource = "myApp.config"/>
</configuration>
Die Datei myApp.config enthält dann den Inhalt des benutzerdefinierten Konfigurationsabschnittes.
<?xml version="1.0"?>
<mySection>
<values>
<value id="1" valueAttribute="valAtt01" newValue="11.1" oldValue="1.1"/>
<value id="2" valueAttribute="valAtt02" newValue="22.2" oldValue="2.2"/>
<value id="3" valueAttribute="valAtt03" newValue="33.3" oldValue="3.3"/>
</values>
<t;/mySection>
Die Vorteile wären:
- Die separaten Konfigurationsdateien können unterschiedliche Zugriffsrechte haben.
- Bei Konfigurationsdateien mit vielen Konfigurationsabschnitten kann die Übersicht verbessert werden.
- Das parallele Arbeiten mehrerer Entwickler an den Konfigurationsdaten wird vereinfacht. Es wird nicht gleichzeitig an einer Datei gearbeitet, sondern jeder Entwickler hat seine separaten Dateien.