| 

.NET C# Java Javascript Exception

7
Hallo,

mal eine Frage zu einer "Best Practice".

Nehmen wir an ich hab ein kleines Windows Programm mit ein paar Einstellungsmöglichkeiten für die Benutzer. Z.B. Standardpfad zu einer Datei, ein paar Checkbox mit Optionen und so weiter.

Was ist der beste Weg um solche Einstellungsmöglichkeiten zu speichern und zu laden?

Einfach eine XML Datei machen? Oder gibt es etwas clevereres?
News:
10.10.2009
Feroc 1,2k 2 9
2 Antworten
8
Hallo,

Einstellungen werden bevorzugt mit dem Konfigurationsmodell im .NET Framework gespeichert. Der Speicherort der Benutzerdaten ist (mehr oder weniger) vorgegeben - hat aber für die Benutzung keinen Einfluss.

Generell gilt dass die Wahl des Speicherortes wohl überlegt werden soll. Unter Vista (und auch unter Win 7) ist es nicht möglich Anwendungsdaten im Anwendungsverzeichnis zu speichern (außer anders konfiguriert). Es sollte immer eine Trennung von Daten und Programmen verfolgt werden. D.h. die Daten in einen speziellen Datenordner und nicht in das Anwendungsverzeichnis.

Aber dies wird durch das Konfigurationsmodell von .net übernommen. Praktischer als damit geht es nicht.

Für weitere Informationen darüber verweise ich auf obigen Link.

Gruss
Günther
10.10.2009
gfoidl 9,4k 3 5
0
je nachdem was dir lieber ist. Mit C# ist es relativ simpel Registryeinträge zu machen und ist wohl auch standard. Wenn du möchtest, dass der Benutzer auch relativ einfach seine Einstellungen mitnehmen kann, dann wäre eine lokale Configdatei die bessere Variante.
Bei Portable Apps zum Beispiel ist es am sinnigsten im Installationsverzeichnis eine configdatei anzulegen.
Ansonsten ist auch der altbekannte Pfad c:\users\Benutzername\AppData\ProgrammName eine beliebte Variante.
10.10.2009
Vayu 656 1 3
3
In .net ist nicht mehr die Registry der Standard sondern das Konfigurationsmodell ;)
gfoidl 10.10.2009
1
Registryeinträge sind ein veraltetes Konfigurationsmodell und in den meißten Fällen nicht mehr zu empfehlen. Mittels der intigrierten Möglichkeiten des .Net-Frameworks und der Serialisierung lassen sich die meißten Problemstellungen eleganter lösen.
Floyd 12.10.2009

Stelle deine .net-Frage jetzt!