Livello di astrazione su entità generate ORM

3

Sto imparando LINQ su SQL (e sto pianificando di imparare Entity Framework). Inizialmente ho usato un livello di astrazione per convertire LINQ in entità SQL in oggetti di dominio. Successivamente ho scoperto l'opzione "Mapping dell'ereditarietà" e rimosso il livello di astrazione e ho iniziato a utilizzare le entità ORM direttamente come oggetti di dominio.

Dopo un po 'di tempo, ho ottenuto un blocco stradale quando non uso il livello di astrazione. Per favore leggi qui: link

  1. È possibile ottenere tutte le attività senza utilizzare il livello di astrazione su ORM?
  2. Quali sono le motivazioni per decidere di avere / non avere il livello di astrazione?

RIFERIMENTO :

  1. link
posta Lijo 13.07.2012 - 14:18
fonte

1 risposta

1
  1. Dipende dalle attività e dall'ORM utilizzato. sia NHibernate che Entity Framework sono ricchi di funzionalità che lo rendono molto probabile. NH ha anche molti hook che puoi implementare per cambiare il suo comportamento

  2. Le estensioni di
  3. hanno sempre dei costi (apprendimento, dipendenza, ...), a meno che il valore che forniscono superi i costi che dovrebbero essere evitati. Un ORM è già un'astrazione che la maggior parte delle volte fornisce più valore (quando è coinvolto l'accesso al database relazionale).

risposta data 15.07.2012 - 18:35
fonte

Leggi altre domande sui tag