Sto usando EF 6.0 per il mio progetto in C # con migrazioni e aggiornamenti manuali. Ho circa 5 migrazioni nel database, ma mi sono reso conto che l'ultima migrazione è stata negativa e non la voglio. So che posso eseguire il rollback a una migrazione precedente, ma quando aggiungo una nuova migrazione (fissa) ed eseguo Update-Database, viene applicata anche la migrazione errata.
Stavo cercando di ripristinare la migrazione precedente ed eliminare il file con una migrazione errata. Ma poi, quando provo ad aggiungere una nuova migrazione, ottengo un errore durante l'aggiornamento del database, perché il file di migrazione è danneggiato (in particolare, la prima riga di codice rinomina la tabella da A a B e le righe successive, EF sta cercando di aggiornare la tabella con nome A - forse è un bug di EF).
C'è qualche query che posso eseguire, che direbbe a EF qualcosa come "Dimentica l'ultima migrazione come se non fosse mai esistita, era male"? Qualcosa come Rimuovere-Migrazione.
Modifica1
Ho trovato la soluzione adatta a me. Modifica del modello in buono stato ed esecuzione Add-Migration TheBadMigration -Force
. Ciò ripercorrerà l'ultima migrazione non applicata.
Comunque, questo non risponde ancora completamente alla domanda originale. Se aggiorno Database alla migrazione errata, non ho trovato il modo corretto di eseguire il rollback e creare una nuova migrazione, escludendo quella errata.
Grazie