203 messaggi dal 02 novembre 2010
Ciao a tutti!
Da poco mi sono messo a studiare un pò l'Entity Framework e devo dire che finora ho sempre fatto un pò confusione, tra Entity, Linq etc.

Finora mi è parso di capire che Entity Framework lavori con un approccio CodeFirst, modellando quindi lo schema del database a partire dal codice.

Ciò che mi chiedo è: nel momento in cui io avessi già un database esistente al quale poggiarmi l'approccio non sarebbe più valido? Ho notato inoltre che esiste "Code First Migration"; ma se il database è popolato da un'altra applicazione (ad esempio un E-Commerce realizzato con un determinato CMS), l'Entity non sarebbe utilizzabile?
10.963 messaggi dal 09 febbraio 2002
Contributi
Ciao,
Entity Framework può essere usato anche con l'approccio "database first", cioè con database già esistente.
Tramite Visual Studio puoi velocemente generare le classi C# che corrispondono alle tabelle che già esistono.

Vai così: dal solution explorer di Visual Studio, fai tasto destro sul progetto e poi -> Aggiungi nuovo elemento -> Cerca "ADO.NET Entity Data Model", selezionalo e clicca Aggiungi.
Ora ti apparirà una finestra di dialogo da cui dovrai selezionare l'approccio che intendi usare. Nel tuo caso ne sono rilevanti due:
  • Se vuoi usare un designer grafico, clicca "Entity Framework designer da database" e ti apparirà un wizard da cui potrai selezionare le tabelle e le stored procedure che vuoi coinvolgere nel progetto. Tutti gli oggetti che importi in questo modo verranno rappresentati in un designer grafico che eventualmente potrai integrare anche in futuro facendo tasto destro nell'area di disegno -> "Aggiorna modello da database". Il designer non ti sarà molto utile se non a visualizzare il modello, dato che il tuo scopo non è quello di aggiornare lo schema del database.
  • Se non vuoi usare un designer grafico (soluzione più snella) scegli "Code first da database".


In entrambi i casi ti verrà generata una classe DbContext e altre classi c# che rappresentano le tabelle del database. Da questo punto in poi si procede normalmente: crei un'istanza del DbContext e usi i suoi DbSet come punto di accesso ai dati.

ciao,
Moreno

Enjoy learning and just keep making
692 messaggi dal 11 febbraio 2013
https://www.udemy.com/entity-framework-tutorial

Te lo suggerisco...lho capito pure io :)
10.963 messaggi dal 09 febbraio 2002
Contributi
Esatto, fare un corso è uno dei modi più rapidi per imparare.

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.