2009-08-13 4 views
0

Ich werde eine Windows-Anwendung in .net zu entwickeln, und ich werde String-Werte sein. (A max von 20 Werten).beste Möglichkeit, 2/3 Datensätze zu speichern [Windows-Anwendung]

Was ist der beste Weg, dies zu speichern? Die Verwendung von SQLIte scheint ein Overkill zu sein.

My.Settings scheinen manchmal die Werte zu vergessen.

Wie speichern Sie diese Werte am besten?

ist XML in Ordnung?

+0

My.Settings scheinen manchmal die Werte zu vergessen? Kannst du darüber mehr erzählen? –

+0

Meine vorherige Anwendung hat einige Daten mit my.settings gespeichert und wenn sie in Vista ausgeführt wird, scheint sie die gespeicherten Werte nicht zu speichern. Amny-Benutzer haben es gemeldet. Hoffe, es ist klar (?) – user153816

+0

Ich bin ein bisschen über den Titel verloren ... Sie sagen, dass Sie 2/3 Datensätze speichern möchten? Bedeutet das "normalerweise 2 oder 3 Platten, aber vielleicht bis zu 20"? – Beska

Antwort

0

Wenn Sie die Skalierbarkeit berücksichtigen und 100% positiv sind, dass es nur maximal 20 Werte gibt und die Art der Werte so ist, dass Sie sie in einer XML-Datei speichern könnten, sollten Sie sie in der App speichern. config (oder Web.config) Ihrer Anwendung. Oder speichern Sie sie in einer externen XML-Datei Ihrer Wahl - .NET hat eine erweiterbare Unterstützung für die Manipulation von XML-Dateien, so dass der Aufwand im Falle einiger Datensätze minimal ist.

Wenn Sie jedoch denken, dass sich Ihre Anwendung weiterentwickeln kann und in Zukunft weitere Werte speichern muss, oder Sie einige Zugriffsbeschränkungen für die Werte bereitstellen möchten, sollten Sie eine Datenbank verwenden. Es ist nur auf längere Sicht besser.

0

XML ist in Ordnung, aber auch eine einfache Textdatei in einigen delimited format ist in Ordnung, für einige Datensätze.

0

Ugh. Vermeiden Sie XML, wo Sie können und wo die Daten, die Sie speichern, keine hierarchische Beziehung zueinander haben. Verwenden Sie stattdessen Schlüsselwerteigenschaften wie Java-Eigenschaften.

key1: value1 
key2: value2 is longer 
key 3: this is value3 for key3. 

Einfacher, effizienter als das Laden eines XML-Parsers.

+0

Aber die OP müsste den Parser schreiben, würden sie nicht? Mit XML wird der meiste schmutzige Parsing-Code bereits von der .Net-Bibliothek bereitgestellt. –

+0

Wirklich? infile.readline(); Schlüssel = strstr (":"); 10 Zeilen Code oben, wo ich noch nie einen XML-Parsing-Code geschrieben habe. Dann wieder finde ich JAXP manchmal sehr ausführlich und dom4j ist nicht viel besser. –

2

Ich würde empfehlen, eine benutzerdefinierte Klasse zu erstellen, um die Daten zu halten, und eine allgemeine Liste zu verwenden, um die Sammlung zu verwalten. Serialisieren/Deserialisieren das zu/von XML und voila - Speicher und stark typisierte Daten.

0

Mit den Funktionen SaveSetting, GetSetting, DeleteSetting können Sie Werte immer in der Windows-Registrierung speichern. Sie verwenden den Registrierungsschlüssel 'HKEY_CURRENT_USER \ Software \ VB und VBA Program Settings'.

Verwandte Themen