Che cosa si perde creando POCO utilizzando i modelli T4 nell'entità framework 4.0? Perché il comportamento predefinito si utilizza quando si utilizza il framework di entità 4.0 non per creare POCO?Entity framework POCO
risposta
Si perde un certo numero di cose. Un POCO "puro" è di uso limitato in un ORM, perché non cambierà il tracciamento. In altre parole, quando si modifica l'oggetto e si salvano le modifiche nel contesto, si desidera che le proprietà modificate vengano salvate nel database. Con un POCO "puro" puoi farlo con il rilevamento delle modifiche basato su snapshot, che è abbastanza inefficiente. Puoi farlo anche con i proxy di runtime, che ti costringono a creare le proprietà della traccia public virtual
, quindi probabilmente non hai più un "POCO". Inoltre, l'utilizzo di proxy significa che non si conosce il vero tipo di runtime dell'istanza.
Si perdono anche alcune delle proprietà di comodità come EntityState
.
I POCO "puri" non possono eseguire il caricamento lazy. Di nuovo, puoi aggirare questo problema con i tipi di proxy, ma, di nuovo, se stai usando i proxy, non hai veramente un POCO "puro".
Oltre a tutto ciò, è meno necessario utilizzare le entità POCO in Entity Framework piuttosto che in altri ORM. Questo perché puoi sempre proiettare i tuoi tipi di entità su istanze POCO usando LINQ, senza dover materializzare prima le istanze di entità. Quindi i POCO "puri" sono sempre disponibili in un'applicazione Entity Framework, anche se non ti capita di mappare le tue entità in quel modo.
- 1. Entity Framework + POCO
- 2. parametrizzate POCO Costruttori con Entity Framework
- 3. Entity Framework POCO Change Tracking Strategies
- 4. Classi di Entity Framework rispetto a POCO
- 5. Entity Framework 4/POCO - Da dove cominciare?
- 6. Classi basate su Entity Framework POCO Vs?
- 7. Entity Framework 4 POCO con dizionario
- 8. Entity Framework POCO costruttore di default
- 9. Gestisci Entity Framework su Crea POCO
- 10. Che cos'è POCO in Entity Framework?
- 11. Aggiunta di attributi [DataMember] [DataContract] in Entity Framework POCO Template
- 12. Consigli su POCO convalida con ASP.NET MVC/Entity Framework
- 13. Entity Framework POCO: aggiorna una proprietà di navigazione
- 14. Entity Framework 5 - Come generare classi POCO dal database esistente
- 15. Entity Framework POCO SaveChanges() in aggiornamento non funziona?
- 16. Entity Framework: aggiunta di un POCO figlio esistente a un nuovo padre POCO, crea un nuovo figlio in DB
- 17. Parallelismo e Entity Framework
- 18. Entity Framework - "Allega()" è lento
- 19. Esiste un generatore di POCO basato su Database 7 di Entity Framework?
- 20. Come posso ricollegare con garbo una struttura POCO di Entity Framework 5 e salvarla?
- 21. Esempi per Entity Framework 4: mappatura dei POCO nel database EAV?
- 22. Come dichiarare la relazione uno a uno utilizzando Entity Framework 4 Code First (POCO)
- 23. Come definire una collezione in un POCO in Entity Framework 4?
- 24. Le migrazioni di Entity Framework hanno interrotto il rilevamento degli aggiornamenti POCO
- 25. Come generare classi POCO di Entity Framework 6.x con mapping da un file EDMX?
- 26. Entità Framework POCO Entità nell'applicazione web multistrato
- 27. Confuso sui generatori per Entity Framework 4.1
- 28. Entity Framework in architettura a livelli
- 29. Entità Framework 5 POCO non inclusi in TFS?
- 30. Migliorare l'efficienza con Entity Framework
Potresti commentare il test dell'unità con non POCO? – rkrauter
Il test dell'unità con non POCO funziona correttamente. Nessun problema per me. –
Grazie per la risposta! – rkrauter