Domanda

Sto creando una piccola applicazione che verrà distribuita su Window. Il database avrà meno di 10 tabelle.

Invece di installare un database nella casella client, sta usando documenti XML per il database e LINQ costerà in termini di prestazioni delle query, in attesa che il file XML venga caricato e scritto?

Se uso un database userò LINQ to SQL.

È stato utile?

Soluzione

È possibile utilizzare un database incorporato come SQLite o la versione portatile di SQL Server (non ricordo come si chiama), in questo modo è ancora possibile utilizzare SQL e LINQ ma non è necessario installare un server di database

Altri suggerimenti

Lo eviterei. Personalmente userei qualcosa come SqlExpress per il DB o un file .mdb. Il problema si presenta quando il file Xml inizia a diventare grande o richiede una modifica al formato (ovvero un aggiornamento alla struttura di una tabella), l'elaborazione che diventa PITA.

Preferirei che se scegli la route del database. Uno dei motivi principali è che è possibile eseguire facilmente molte funzioni diverse quando si utilizza il database. Queste funzioni includono ordinamento, paginazione, raggruppamento, ecc. È inoltre possibile utilizzare la potenza dei mappatori OR per semplicemente la codifica e ottenere le operazioni di persistenza, recupero con pochissime righe di codice.

La linea di fondo è andare con il database!

Aggiunta di alcuni riferimenti alla risposta di MagicKat:

Non molto portatile, ma gratuito e limitato -

SQL Server 2008 Express

Microsoft JET si adatta meglio a requierment compatto. È incorporato (installato come DLL) e puoi spostare il DB come un singolo file (.mdb). Dall'articolo di Wikipedia, apprendo che la versione corrente è Microsoft Access Engine .

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