Domanda

La situazione: A volte uno schema di database non è quello che si considera una rappresentazione ideale di informazioni del sistema e potrebbe non essere in grado di cambiarlo. Abbiamo utilizzato Entity Framework per creare un modello concettuale più bello di codice contro in situazioni come questa. Questo mezzi di aggiornamento del modello dal database e poi cambiando noi stessi, sia attraverso il progettista o attraverso il file .edmx direttamente utilizzando un editor di testo.

Il problema: Quando si aggiorna il modello dal database, tutte le modifiche apportate con attenzione sono gettati fuori dalla finestra. Questo può rendere l'aggiunta di nuove entità una vera seccatura, come si sono fondamentalmente costretti a farlo attraverso modificando direttamente il file .edmx.

La domanda: C'è un modo per ottenere Entity Framework al solo aggiornamento entità selezionate dal dal database? Oppure è possibile dire che lasciare il resto del modello solo quando si aggiunge una nuova entità?

Grazie!

È stato utile?

Soluzione

No, non c'è alcun modo per rendere gli aggiornamenti selettivi con design built-in. Anche il progettista non buttare via tutte le modifiche. Di solito non tocca modello concettuale (tranne alcune rare occasioni in cui si rinomina continuamente alcune associazioni) e la mappatura, ma elimina sempre modello di archiviazione e sovrascrivere con nuova definizione. Ho lavorato senza alcun problema con modifiche al mio modello concettuale e la mappatura e aggiornamenti in esecuzione dal database.

Designer funziona come qualsiasi altro in Visual Studio - toccando il (modello di archiviazione) codice generato non è supportato funzione. Una volta che lo si fa non è possibile utilizzare Aggiornamento dal database più.

strumento commerciale che supporta probabilmente migliore aggiornamento dei modelli - si può provare una versione di prova

Altri suggerimenti

Se aggiornando le entità selezionate, si intende semplicemente una o più tabelle, è possibile eliminare quei tavoli dal modello, e quindi aggiungere di nuovo in individualmente per tirare in tabelle modifiche scegliendo individualmente - lo faccio spesso tabelle sottostanti sono cambiati (in particolare durante lo sviluppo).

Non finisce per perdere tutte le modifiche manuali apportate a quelle entità-re aggiunto dopo l'entità / tavolo è stato tirato nel modello (cioè spesso rinominare le proprietà di navigazione e poi dopo ogni reimportazione della tabella ho bisogno di rinominare manualmente di nuovo).

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