10

L'utilità di migrazione EF sembra piuttosto piacevole quando si utilizza il codice per la prima volta.Utilizzo dello strumento di migrazione EF4 con approccio model-01

Sulla base di this blog post, ho provato ad impostarlo nel mio progetto in cui usiamo il modello-first. Quando si esegue Enable-Migrations comando, ottengo il seguente errore:

Creating a DbModelBuilder or writing the EDMX from a DbContext created using Database First or Model First is not supported. EDMX can only be obtained from a Code First DbContext created without using an existing DbCompiledModel.

C'è un modo intorno ad esso in modo da poter usare la migrazione EF senza passare a codice prima?

+1

Immagino di no - è quello che dice l'eccezione ma sarebbe un bel suggerimento per [Data UserVoice] (http://data.uservoice.com/forums/72025-entity-framework-feature-suggestions). –

+0

+1 per il collegamento al blog –

risposta

3

Ho un blog incompleto su come è possibile farlo. Non sono sicuro se sarà adatto alle tue necessità, ma sembra essere l'unico metodo disponibile finora.

In pratica si utilizza t4 personalizzato per generare DbMigrationsConfiguration e DbContext dal modello e non è necessario eseguire Enable-Migration. È sufficiente eseguire Add-Migration e Update-Database nella console di Gestione pacchetti.

http://blog.amusedia.com/2012/08/entity-framework-migration-with-model.html

sarò aggiornare il blog e T4 per renderlo più facile da usare in seguito.

+0

Interessante, tornerò a lavorare tra tre settimane e assicurati di controllare questo, grazie. – Johnny5

+0

Non l'ho ancora applicato al mio progetto, non so se funzionerà "out of the box", ma sembra essere l'unica soluzione finora. – Johnny5

+0

Ho incontrato lo stesso problema. Ma il secondo plug-in del codice non funziona con EF 6 ...... Come può essere risolto? – Franva

3

che stavo cercando la stessa soluzione ed ho trovato questo: Entity Designer Database Generation Power Pack Dopo l'installazione, quando si sceglie "Genera database dal modello ..." che sarà popup una nuova procedura guidata ed è possibile scegliere "Generate migrazione T-SQL" .

Problemi correlati