Domanda

Sto scrivendo un semplice programma che verrà eseguito interamente sul lato client. (Programmazione Desktop? Non la gente ancora farlo?) E ho bisogno di un modo semplice per memorizzare quantità insignificanti di dati in forma strutturata, ma in realtà non si vede alcuna necessità di utilizzare un sistema di database. Cosa c'è di più, alcuni dei dati deve essere serializzato e passati in giro a utenti diversi, come una sorta di "file" o forse un "documento". (Qualcuno ha mai fatto prima?)

Così, ho guardato utilizzando DataSet .NET, LINQ, la manipolazione XML diretta, e tutti sembrano come sarebbe ottenere il lavoro fatto, ma mi piacerebbe sapere, prima mi tuffo in una delle loro, se c'è un metodo che è generalmente considerato come più facile da codificare rispetto ad altri. Come ho detto, la quantità di dati da memorizzare è banale, anche se un centinaio di persone tutti hanno usato la stessa macchina non stiamo parlando di più di 10 MB, quindi le prestazioni non è così grande come una preoccupazione è codeability / manutenibilità. Grazie a tutti in anticipo!

È stato utile?

Soluzione

Suona come LINQ-to-XML è una buona opzione per questo.

collegamento 1 2

tonnellate di informazioni là fuori su questo.

Altri suggerimenti

Senza sapere niente altro circa la vostra applicazione, i set di dati .Net sarebbe probabilmente la soluzione più semplice, perché WriteXml e ReadXml già esiste.

Ogni serializzazione API dovrebbe fare bene qui. Vorrei raccomandare qualcosa che si basa contratto ( non BinaryFormatter, che è di tipo-based), come che vi terrà utilizzabile nel tempo (come le modifiche di montaggio).

Quindi vorrei costruire un modello di oggetti di base (DTO) e utilizzare qualsiasi di:

  • XmlSerializer
  • DataContractSerializer
  • protobuf-net (tutti voi sapeva che stava arrivando ...)

OO, semplice e facile. E facile da usare per il passaggio di frammenti dei dati (sia tra gli utenti di un server centrale).

avrei scelto un database incorporato. Usando qualcosa come SQLite non sembra essere un eccessivo per me. Si può anche provare la sua c # porto ( http://code.google.com/p/csharp -SQLite / ).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top