Web- und Software Development

Konfiguration unter .NET

Written By: Mario Priebe - Feb• 02•09

Sollte der Entwickler dem Anwender es ermöglichen, die Software an sich anzupassen, so müssen die getätigten Einstellungen gespeichert werden. Aber auch um andere wichtige Informationen zu speichern, bietet sich eine Konfigurationsdatei an. Vor der .Net Zeit waren das die .ini Dateien, welche jetzt durch app.config ersetzt wurden.

Dabei ist es wichtig, dass bei der Erstellung der Name app.config gewählt wird, da der Compiler diese Datei erkennt und später in Anwendungsname.exe.config umbenennt. Zudem muss diese Datei im selben Verzeichnis liegen, wie die Anwendung.exe Die Erstellung einer solchen Datei ist recht einfach. Dazu klickt man in Visual Studio auf “Projekt” -> “Projektname-Eigenschaften”. Am linken Rand wählt man “Einstellungen” aus und schon ist man am Ziel.

Jetzt kann man in den Spalten den Name, sowie den Typ auswählen, den Bereich festlegen und den Wert zuweisen. Bei den Bereichen unterscheidet man zwischen Benutzer und Anwendung. Wenn man Anwendung auswählt, so ist dieser Wert schreibgeschützt und kann nicht im  Quelltext des Programms geändert werden, sondern nur in der app.config direkt. Anders sieht es bei dem Bereich Benutzer aus, hier kann man den Wert beliebig ändern.

Um jetzt auf einen Wert diese Konfigurationsdatei zuzugreifen, benutzt man folgenden Syntax:

 Properties.Settings.Default.NameDerEigenschaft;

Alternativ auch:

Settings mySettings = new Settings();
mySettings.NameDerEigenschaft;

Gegenüber einem Eintrag in der Windows Registry ist es mit einer app.config Datei möglich, die Software in einen anderen Ordner, oder gar auf einen anderen Computer zu kopieren, da man lediglich alle benötigten Dateien kopieren muss, was sich bei der Registry als schwierig, bis nicht möglich erweist. Meiner Ansicht nach ist die Registry ein sterbendes Modell, da es wie andere Betriebssysteme zeigen auch ohne geht.

Dieses war ein Gastbeitrag von Andre Mommert wofür ich mich bei Dir herzlichst bedanke : )

Ähnliche Beiträge

You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.