Domanda

Ho un DB DB esistente con schema e dati.Ho creato le classi usando l'utilità Microsoft (classi Codefirst che è).Ho quindi abilitato le migrazioni.

Ora sono perplesso per il comportamento dei -ignorechanges.Se la migrazione iniziale non ha alcuna logica () e no down (), cosa succederà quando si dispiego su un prodotto DB?

EF ignora semplicemente tutte le migrazioni e basta costruire da zero direttamente dal modello?

Se non metto in -ignorechanges, tutta la logica su () e giù () è lì.Ma al momento del database di aggiornamento, lancia un'eccezione su una tabella con lo stesso nome già esistente.

Sto usando EF 5 RC.

È stato utile?

Soluzione

IgnoreChanges è per gli scenari in cui è stata applicata l'applicazione esistente (sia nella Dev e Prod) e si desidera avviare l'utilizzo delle migrazioni.IgnoreChanges Semplifica aggiunta di migrazione iniziale al database esistente.Se sei in scenario in cui non esistono database di produzione non è possibile utilizzare i cambiamenti ignorabili.

L'opzione semplice per il tuo caso è la creazione di entità dal database esistente e continuare a lavorare su un altro database creato dalla migrazione da tali entità perché è necessaria la creazione di tabelle per tutte quelle entità nel metodo Up (e rispettivamente il metodo Down).

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