Servus zusammen!
Es gibt sicher zig verschiedene Herangehensweisen für das Verwalten von Einstellungen in einer Software. Speichern in der Registry, in einer INI Datei, in einer Datenbank, usw...
Gibt es denn etwas das Ihr besonders bevorzugt, oder absolut verabscheut?
Hintergrund ist, dass ich aktuell das Modell "Serialisieren/Deserialisieren" nutze und mich frage ob es da nicht etwas besseres/schnelleres/einfachrereres gibt...
Kriz
Es gibt hier keine absolute Antwort, weil allein der Anwendungstyp (Desktop, Web, App...) gewisse Dinge von Haus aus ausschließt oder bevorzugt.
Und dann gibt es natürlich zig Anforderungen an eine Settings-Verwaltung, die dann auch noch die Art und Weise mit entscheidet.
Aber der erste Anlaufpunkt in .NET ist i.d.R.
[Tutorial] Konfigurationsmodell im .NET Framework
Das widerum ist aber nicht für alle .NET Szenarien geeignet bzw. veraltet.
So hat .NET Core ein neues Konfigurationsmodell (Konfiguration in ASP.NET Core), das durch ASP.NET Core entstanden ist, aber dank .NET Standard auch in .NET Framework Verwendung findet.
Es ist viel einfacher zu verwalten, deckt mehr Szenarien ab und lässt sich auch leichter in CI/DevOps Prozess einbinden.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hallo Kriz,
für mich ist mittlerweile als "best practice" die Konfiguration von ASP.NET Core (siehe Abts Beitrag) hervorgegangen und zwar sowohl für .NET Core als auch .NET Full.
Dies v.a. wegen (ohne bestimme Reihenfolge):* es können verschiedene Konfigurationsquellen vereint werden, die sich in der Reihenfolge des Hinzufügens zum Konfigurations-Builder überschreiben -- dadurch können z.B. sensible Daten außerhalt der "Hauptkonfiguration" gespeichert werden und zur Laufzeit werden diese vom Framework zusammengeführt
mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"