Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Best Practise für Datenspeichern
Mavericklp
myCSharp.de - Member



Dabei seit:
Beiträge: 2

Themenstarter:

Best Practise für Datenspeichern

beantworten | zitieren | melden

Moin moin zusammen,
ich schreibe gerade ein Programm, das auf einem USB Stick laufen soll. Ich benötige aber zur Laufzeit einige Variablen, die ich gerne in einer ini Datei hätte. Es soll nichts auf dem Computer selber gespeichert werden.

Wie ist dafür die beste Vorgehensweise? Die Settingsdatei wird ja unter AppData gespeichert. Bei der Resourcen Datei sollen keine Daten während der Laufzeit geändert werden. Die AppData Datei scheint mir auch nicht so das richtige zu sein. Zumal der Name sich bei mir aus irgend einem Grund mit Projekt.dll.config zusammen setzt und nicht mit Projekt.exe.config. Und der User soll auch in dieser Datei Arbeiten können. Ich hätte dort auch gerne mehrere Gruppen die ini Datei besteht bei mir aus 6 Gruppen.

Und ich würde gerne das Programm Verzeichniss selber so klein wie möglich halten. Am liebsten wäre mir nur eine Datei, die dann beim ersten starte die ini oder welcher Datei auch immer erst erstellt.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16.183

beantworten | zitieren | melden

Zitat von Mavericklp
die ich gerne in einer ini Datei hätte.
Ja, haben wir schon 1980?
Settings sollte man in XML oder Json abspeichern, nicht mehr in Ini-Dateien.
Allein aus Validierungs- und Strukturgründen
Zitat von Mavericklp
Die Settingsdatei wird ja unter AppData gespeichert.
Da kann sie liegen, muss aber nicht.
Zitat von Mavericklp
Wie ist dafür die beste Vorgehensweise?
"Die beste" gibts nicht. Es gibt immer mehrere Wege nach Rom.
Zitat von Mavericklp
Zumal der Name sich bei mir aus irgend einem Grund mit Projekt.dll.config zusammen setzt und nicht mit Projekt.exe.config.
Dann hast Du die Config auf Bibliotheks-Ebene (Projekt) und nicht Anwendungsebene erstellt.
Zitat von Mavericklp
Ich hätte dort auch gerne mehrere Gruppen die ini Datei besteht bei mir aus 6 Gruppen.
Die Standard .NET Settings sind sehr simpel, vor allem Key-Value basierend.
Die Standard-Settings sind nicht für ganze "Objekte" oder Listen" gedacht.
Möglichkeiten:
- Du speicherst ein Objekt und serialisierst es als Json.
- Du erstellst Custom Types in der Config.
Zitat von Mavericklp
Am liebsten wäre mir nur eine Datei, die dann beim ersten starte die ini oder welcher Datei auch immer erst erstellt.
Für mich hört sich das so an, dass Du das selbst umsetzen solltest: sprich ein eigener Settings Profiler.
Im Endeffekt wird das am Ende nichts anderes sein als ein einziges Objekt, das Du halt zB als XML serialisierst.
Damit hast Du selbst in der Hand:
- Wie die Datei erzeugt wird
- Wie die Datei aufgebaut ist
- Wie und Wo die Datei abgelegt wird

Im Endeffekt brauchst nur eine Serialisierung und Deserialisierung
How to serialize and deserialize JSON using C# - .NET
und eine eigene Logik, wo die Datei liegt.
Fertig.
private Nachricht | Beiträge des Benutzers
Mavericklp
myCSharp.de - Member



Dabei seit:
Beiträge: 2

Themenstarter:

beantworten | zitieren | melden

Das ist der Grund warum ich nachgefragt habe.

Dein letzter Punkt hört sich gut an. Ich glaube der wird es dann werden.
Vielen Vielen Dank für deine Antwort!
private Nachricht | Beiträge des Benutzers
BerndFfm
myCSharp.de - Team

Avatar #nZo9Gyth4VPDSxGqM4sT.jpg


Dabei seit:
Beiträge: 3.800
Herkunft: Frankfurt a.M.

beantworten | zitieren | melden


Ich benutze in einfachen Projekten auch immer eine Json-Datei für Settings.

Das hat viele Vorteile : Du musst dich nicht um Datentypen und -wandlung kümmern, man kann beliebig Einträge hinzufügen oder weglassen. Nur nachträglich keine Typen ändern.

Bei portablen Apps kann man die Json-Datei auch auf dem USB-Stick speichern.

Man kann auch einfach mehrere Settings anlegen und zwischen verschiedenen Settings umschalten.

Grüße Bernd
Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3
private Nachricht | Beiträge des Benutzers