5

Non ho quasi mai toccato l'EF4, ma ho usato Linq per un bel po 'di sql. Mi piacerebbe iniziare in uno dei modelli EF, ma non ho idea di quali situazioni abbiano senso per ognuno o quale fosse il loro intento.Quali sono i tipi di modelli utilizzati, pro e contro?

Ho le seguenti possibilità:

  • modelli di dati Modello
    • ADO.NET Entity Data
    • Database Service-based (è presente anche relative al EF
  • Codice? modelli (ho familiarità con T4)
    • Gene EntityObject ADO.NET Rator
    • ADO.NET Entity Self-tracking Generator
  • Modelli online
    • ADO.NET C# POCO Entity Generator
+0

Hai anche l'opzione di "Primo codice" ora solo per complicare di più le cose anche se al momento è solo un CTP. –

risposta

14

Non ho idea di quali situazioni rendono senso per ciascuno o quale fosse il loro intento

Non significa sembrare maleducato, ma hai dato un'occhiata a MSDN/ASP.NET per scoprirlo? Ci sono molte informazioni in giro. E c'è uno lotto in ognuno di quei modelli, più di quanto io possa entrare qui. C'è una pagina MSDN per ognuno di questi.

Detto questo, ti darò un sommario rapido , quindi le persone che inciampano qui hanno qualche informazione.

ADO.NET Entity Data Model

Questo è il file si crea per utilizzare Entity Framework come ORM, ed è obbligatorio per l'utilizzo di EF. Ne hai bisogno prima di usare qualcuno degli altri. È possibile creare l'EDM con un certo numero di approcci diversi, tra cui database prima (generare da DB), in codice prima, Model-First, ecc

servizio basato su Database

ho non ho mai sentito parlare di questo termine, e dato che ho lavorato con EF molto ultimamente (e sto leggendo), dubito che questo sarà collegato a EF.

ADO.NET EntityObject Generator

genera le classi per i soggetti che ereditano dalla classe EntityObject. Identico al generatore di codice EF predefinito, tranne che per inserire il codice di output nel file Model.edmx.designer.cs (predefinito), il codice viene inserito in file separati. Personalmente non vedo alcun vantaggio in questo modello.

ADO.NET Entity Self-tracking Generator

genera le classi per le persone quando si desidera sviluppare applicazioni n-tier (cioè se si vuole consentire a un WCF/app Silverlight per lavorare con il vostro modello). Le entità sono configurate per essere 'tracciabili' dal grafico EF, al fine di gestire le operazioni di persistenza da varie applicazioni.

ADO.NET C# POCO Entity Generator

mio preferito. :) Genera classi per entità che ereditano da niente. Non hanno idea di essere usati per la persistenza. Usalo per le applicazioni quando vuoi ignoranza di persistenza, testabilità e accoppiamento lento dei tuoi livelli dominio/persistenza.

+0

+1 grazie per la panoramica, questo è quello che speravo per – Maslow

+0

@Maslow - si prega di spuntare questa come la risposta corretta. – RPM1984

+0

Stavo cercando di vedere se qualcun altro avrebbe contribuito, contrassegnandolo. – Maslow