Domanda

Programmazione da un po' e ho già utilizzato LINQ-To-SQL e LINQ-To-Entities (anche se quando si utilizzano le entità si è verificata una relazione Entità/Tabella 1-1, ovvero non molto diversa da L2SQL)

Ho letto molto sull'inversione del controllo, sull'unità di lavoro, sul POCO e sui modelli di repository e vorrei utilizzare questa metodologia nelle mie nuove applicazioni.

Il punto in cui faccio fatica è trovare una guida per principianti chiara e concisa per EF4 che non presuppone la conoscenza di EF1.

Le domande specifiche a cui ho bisogno di una risposta sono:

Prima il codice/prima il modello?Pro/contro riguardo a EF4 (ovvero cosa succede se eseguo prima il codice, cambio il codice in un secondo momento e devo rigenerare il mio modello DB - I dati vengono conservati, trasformati o eliminati?)

Supponendo che andrò prima al codice (mi piacerebbe vedere come EF4 lo converte in uno schema DB) come posso iniziare effettivamente?Molto spesso ho visto articoli con diagrammi di entità che affermavano "Quindi questo è il mio modello di entità, ora lo farò..." - Sfortunatamente, non sono chiaro se hanno creato il modello nel designer, lo hanno salvato in generare codice quindi interrompere qualsiasi ulteriore generazione di codice automatico -oppure- Hanno codificato (POCO)?classi e in qualche modo le hanno importate nella vista del progettista?

Suppongo che ciò di cui ho veramente bisogno sia capire da dove viene la "magia" e come aggiungerla io stesso se non sto semplicemente generando un modello EF direttamente da un DB.

Sono consapevole che la domanda è un po' vaga, ma non so cosa non so, quindi ogni input/correzione/chiarimento è apprezzato.

Inutile dire che non mi aspetto che qualcuno si sieda qui e mi insegni EF: mi piacerebbe solo qualche buon tutorial/forum/blog/ecc.per i principianti completi delle entità

È stato utile?

Soluzione

Questi articoli potrebbero interessarti... la serie approfondisce davvero i vantaggi e gli svantaggi di un approccio POCO.

http://blogs.msdn.com/b/adonet/archive/2009/05/21/poco-in-the-entity-framework-part-1-the-experience.aspx

http://blogs.msdn.com/b/adonet/archive/2009/05/28/poco-in-the-entity-framework-part-2-complex-types-deferred-loading-and-explicit-loading. aspx

http://blogs.msdn.com/b/adonet/archive/2009/06/10/poco-in-the-entity-framework-part-3-change-tracking-with-poco.aspx

In questi articoli l'autore menziona articoli futuri che descrivono le migliori pratiche nell'implementazione di modelli di repository e unità di lavoro, ma non riesco a trovarli.Questi articoli sono ben scritti e mi piacerebbe leggere altro di questo autore.

Altri suggerimenti

Mi sono imbattuto in questo: http://blogs.msdn.com/adonet/pages/feature-ctp-walkthrough-code-only-for-the-entity-framework.aspx

Che ti fornisce prima la procedura dettagliata per il codice.Richiede CTP 3 per EF4 (download collegato da quell'articolo).

Questo è abbastanza vicino a quello che stavo cercando (anche se idealmente sarebbe stata preferibile una soluzione che non si basasse su un CTP)

Ti consiglio di dedicare circa mezz'ora e generare un modello EF1.0 stabile nel tuo attuale VS.Ciò ti consentirà di fare molta strada verso la comprensione delle metafore e dei concetti di EF 4.0.Basta creare un semplice db Clienti, Prodotti e Ordini... Consiglio di crearne uno tuo e di non utilizzare Northwind.

Questa è un'ottima domanda, ma difficile da tenere aggiornata man mano che Entity Framework continua a maturare.Probabilmente il posto migliore da cui iniziare per rimanere aggiornato in futuro è Pagina EF di Microsoft.

Alcuni altri collegamenti che ho trovato utili mentre cercavo su Google (incentrato su Code First):

Puoi prendere il libro di Lerman o qualcosa di più semplice come "Mappatura relazionale degli oggetti Pro linq".Tutti i concetti sono sempre gli stessi con POCO, tranne che ora dovresti disabilitare la generazione del codice e mapparlo direttamente al tuo modello in edmx csdl (o creare il tuo generatore POCO).Anche tutti i principi di mappatura sono gli stessi.Ad ogni modo in fase di esecuzione stai lavorando con un proxy derivato dal tuo oggetto POCO, quindi dovresti preoccuparti del supporto dell'intercettazione (virtualizzazione delle tue proprietà POCO).

Ecco un Procedura dettagliata sul modello POCO per Entity Framework che sembrava piuttosto buono.Potresti anche voler dare un'occhiata a Blog del team ADO.NET.Se vuoi iniziare dall'inizio (EF v1.0) come base per la tua conoscenza di EF, ho trovato Julia Lerman Quadro delle entità di programmazione libro molto completo.

Non ho il rappresentante per commentare una risposta, ma ecco un seguito alla risposta di Jinkinz:

Utilizzo di modelli di repository e unità di lavoro con Entity Framework 4.0:

http://blogs.msdn.com/b/adonet/archive/2009/06/16/using-repository-and-unit-of-work-patterns-with-entity-framework-4-0.aspx

Julia Lerman sì una bella serie di video introduttivi, circa 10 minuti ciascuno.Sono introduttivi, ma contengono molti suggerimenti pratici che eliminano alcuni potenziali ostacoli all'apprendimento.Mi è piaciuta particolarmente la sua dimostrazione di come osservare l'effettivo SQL utilizzando SQL Server Profiler.

Se intendi utilizzare scenari disconnessi, ti consiglio di leggere il libro di Julie Lerman:"Programmazione DbContext", nel capitolo speciale 4.

Ho trovato molti esempi nei blog, ecc., ma quasi tutti riguardano scenari collegati.

Sto iniziando anch'io.e questi libri mi hanno aiutato molto.A proposito, le ho comprato tre libri.

Cercavo le stesse risposte e mi sono imbattuto http://www.dotnetcurry.com/ShowArticle.aspx?ID=599

Alla fine del collegamento, sono presenti alcuni collegamenti che ti consentiranno di iniziare a utilizzare Entity Framework 4.

Spero che questo ti aiuti

Wow, molte risposte.Che ne dici di un esempio che contenga una versione ottimizzata dei modelli T4 che generano complessivamente POCO + interfacce + repository?

https://entityinterfacegenerator.codeplex.com

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