Domanda

La lettura circa la mancanza di persistenza dell'ignoranza in Entity Framework spesso inciampare su POCO Adapter . La domanda è, qualcuno usa nella produzione, come si va e quali sono le insidie?

considero due alternative per la progettazione di applicazioni: utilizzare pocos con tale scheda in logica di business e farli utilizzare il livello di presentazione o creare un livello di servizio di conversione tra Enti EF e DTOS: (1) Le persone EF <-> adattatore <-> gli oggetti di business POCO <-> Presentazione o (2) gli enti EF <-> livello di servizio <-> DTOs <-> Presentazione. Il primo approccio sembra essere più pulito, ma io sono un po 'esitante in merito a Poco adattatore non è essere una soluzione molto standard e può contenere alcune carenze non evidente in questo momento.

È stato utile?

Soluzione

EFPocoAdapter è stato deprecato in favore di Entity Framework 4.0. Il versione beta stato annunciato meno di una settimana fa e si può già scaricare beta 1 se sei un abbonato MSDN.

Non v'è alcun motivo per utilizzare più EFPocoAdapter. Vorrei anche incoraggiarvi a leggere ADO.NET Entity Framework design team blog per un elenco di tutte le caratteristiche di EF 4.0, è una lettura eccellente.

Anche dare un'occhiata a questo post del blog: POCO in Entity Framework:. Parte 1 - l'esperienza

Per quanto riguarda la mia esperienza con EFPocoAdapter, ero / sono felice con il supporto per POCO, lazy loading e gli scenari n-tier. Entity Framework si basa su questo ulteriore, fornendo modelli T4 tra le altre cose, una cosa che mi sono sentito veramente manca (anche se molti preferiscono mano il codice loro classi POCO). Gli altri problemi che ho avuto sono stati problemi serializzatore con JavaScriptSerializer che non gestisce i riferimenti circolari, mentre DataContractSerializer che fa, richiede gli attributi di classe / membri che prima di modelli T4 non erano possibili con le classi auto-generate.

L'EFPocoAdapter è stata sempre destinata ad essere una sorta di messa in scena la piattaforma per ottenere un feedback da parte della comunità e sviluppare il set di funzioni per EF 4.0. Mentre è un po 'agitato attorno ai bordi sono riuscito a soddisfare le mie esigenze, anche se dopo un paio di scambi con Jaroslaw. Questo, e il supporto è stato molto squallido (poche persone sul forum o stack overflow).

Altri suggerimenti

Si potrebbe desiderare di utilizzare automapper . Poi si può scrivere entità EF, entità POCO e DTO-s, se necessario. Due set di entità sembrano essere un po 'in testa, ma quando si ha bisogno di essere persistente ignoranza, allora questo sembra essere modo più semplice con automapper.

Introduzione alla automapper

Vorrei solo aggiungere a questo thread che ho usato l'Entity Framework v4 con un modello POCO generato utilizzando il C # POCO Generatore della produzione (per circa sei mesi), e sta lavorando molto bene.

Ci sono un poche catture quando le si usa con i servizi WCF, quindi se si stanno prendendo in considerazione esponendoli tramite WCF forse vale la pena mettere insieme una prova sensibile del concept e vedere se la complessità del grafo di oggetti porrà alcun problema per la serializzazione, l'utilizzo senza stato ecc ecc.

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