Io e il mio team avvieremo un nuovo progetto e siamo nella fase di esplorare e testare alcune nuove (o non così nuove) tecnologie.Entity Framework con un grande progetto
Fino ad oggi usavamo l'ADO classico con DBDataReader, i proxy per il caricamento lento e in alcuni casi DataTable.
Il team è composto da 3 sviluppatori e un designer di database. I nostri progetti sono composti da almeno 130 tavoli ciascuno.
Il nostro nuovo progetto ha il potenziale per crescere quindi ci aspettiamo sicuramente 100 tavoli.
Ho letto e fatto alcuni semplici test con EF5 negli ultimi 2 giorni e non riesco ancora a decidere se dovremmo usarlo.
- Di solito dividiamo un grande progetto in molti progetti "modulo" permettendoci di lavorare più velocemente e meglio sotto il controllo del codice sorgente. Utilizzeremo un grande "edmx" per l'intero DB?
- Dal momento che abbiamo un Database Designer, sospetto che CodeFirst non sia un'opzione. Quindi vale la pena utilizzare EF con l'approccio Database First?
- Se usiamo il primo approccio del Database, l'EF è abbastanza intelligente da rilevare tutte le relazioni correttamente ed essere pronto per l'uso senza ulteriori configurazioni aggiuntive da parte mia? (Per configurazioni extra voglio dire che dovrò scrivere DataAnnotations o dover ovveride DbContext)
- Personalmente mi trovo molto sicuro della progettazione di un Database con sql. L'unico fastidio che ho è quando devo aggiornare tutti i select, delete, update, insert scripts quando un'entità viene cambiata nelle mie classi-Lists. EF si prenderà cura questo per me, ma tranne questo sto iniziando a credere che rallenterà le prestazioni e finirà per rallentare la mia produzione dal momento che non ci sono familiari con esso ..
Cosa pensi sia LO VALE?
* A parte le informazioni DataAnnotation e DbContext ovveride, c'è qualcuno che utilizza modelli T4 semplici per creare le tabelle (schema)?
Stai facendo molte domande su Entity Framework: troppe per il tipo di formato domanda-risposta descritto nelle FAQ: http://stackoverflow.com/faq Si prega di limitare l'ambito della domanda e se necessario creare più domande. Entity Framework è una tecnologia eccellente e, a mio parere, gli sforzi per apprendere il framework sono un vantaggio indipendentemente dalla decisione della tua squadra. – IAbstract
Grazie per il tuo tempo Abstract, Stavo cercando di presentare la mia situazione attuale (dilemma) nel modo migliore e veloce possibile. Non mi aspetto un'analisi approfondita su ciascuna delle mie domande. –
Quale versione di Visual Studio stai usando? VS2012 consente di utilizzare più diagrammi per lo stesso .edmx. –