2012-06-02 18 views
5

Mi piace lavorare con il framework entità per molte ragioni: la facilità di utilizzo del progettista di entità, la potenza di linq e la facilità di associazione. Occasionalmente voglio creare una semplice app che non ha bisogno di usare un database, ma deve ancora lavorare con i dati e visualizzarli sullo schermo, nelle griglie ecc. Quindi vorrei creare un modello EF rapido e usarlo per questo, ma non sembra funzionare molto con il solo utilizzo di dati locali.Entity Framework senza database

La mia domanda è: c'è un uso corretto dell'EF per lavorare con i dati locali e forse solo serializzare/deserializzare l'intero contesto in un file? O è solo uno sforzo troppo grande per rendere il lavoro correttamente? Usavo Dataset in questo modo, insieme a Linq to Dataset, e funziona bene ... Quindi forse quelli sono ancora il modo migliore per andare in questo scenario?

+0

Forse hai considerato utilizzando alcuni database incorporato? Come ad esempio Firebird Embedded che supporta EF? Ciò renderebbe IMO molto più facile. –

risposta

0

Non so cosa intendi per "dati locali" esattamente (sembra che non sia un database), ma penso che la porzione di Dataset vs. EF del tuo post sia (per me) la vera domanda.

EF è ideale quando è necessario modellare una logica aziendale solida, implementare un modello di modello di dominio, utilizzare Domain Driven Design, ecc. In pratica qualsiasi scenario in cui un modello di modulo tabella o record attivo non è appropriato.

Quando hai solo bisogno di visualizzare alcune griglie di dati e la logica di business è molto semplice, i Dataset sono sicuramente la strada da percorrere (nella mia esperienza).

+0

Sì, dovrei chiarire: lavorare con i dati senza un database, cioè tutti in memoria. Fondamentalmente mi piacerebbe fare quello che facevo prima nei set di dati, ma usare il codice EF in modo che sia più compatibile se/quando voglio collegarlo successivamente con un DB. –

+1

È possibile creare un modello di entità utilizzando la finestra di progettazione o prima il codice, senza un database esistente; inoltre, EF è "in memoria" nello stesso senso in cui è un set di dati. Se la tua vera domanda è "Come faccio ad usare EF con un datastore diverso da un database (ad es. XML)?" quindi dai un'occhiata a questo post SO: http://stackoverflow.com/questions/608477/entity-framework-with-xml-files –

+0

Creo entità usando il designer, ma quando provo a creare un contesto, fallisce con nessuna connessione al database. forse c'è un modo anotehr di usarli però? –

Problemi correlati