EF5-Migration mit vorhandener Datenbank kann nicht ausgeführt werden

Zuerst habe ich diese Fragen / Antworten gelesen:

EF-MigrationsnachrichtWie kann ich die Add-Migration-Überprüfung beenden, wenn in meiner Datenbank keine ausstehenden Migrationen vorhanden sind, wenn codebasierte Migrationen verwendet werden?EF4.3 Code First Migrations ignorieren ausstehende Migrationen

Diese scheinen alle für EF-Versionen vor EF5 zu sein, und meine Situation scheint nicht zu diesen Antworten zu passen. Lassen Sie mich also meine Situation beschreiben.

Meine Anwendung wurde ursprünglich mit EF4 erstellt, Modell zuerst. Ich habe meine Datenbank mit dem GUI-Designer entworfen und zum Generieren meiner Datenbank verwendet.Ich habe einige Monate lang Daten in der Datenbank ausgeführt und gesammelt. Ich kann diese Daten wirklich nicht verlieren.Ich habe meinen Code verzweigt, EF5 mit NuGet installiert und mit EF Power Tools mein Modell aus meiner Datenbank generiert, indem ich mit der rechten Maustaste auf ein neues Klassenbibliotheksprojekt geklickt und ausgewählt habeEntity Framework | Reverse engineer code first.Ich konnte problemlos erneut auf mein neues Projekt verweisen, mein Projekt konvertieren, um den neuen DbContext anstelle von ObjectContext zu verwenden, und die EF4-Klassenbibliothek entfernen, die mein altes Modell enthielt. Das Programm funktioniert super!

Jetzt möchte ich automatische Migrationen ausprobieren, mit denen ich ein wenig Erfahrung in Ruby on Rails gesammelt habe. Folgendes habe ich getan:

RanEnable-Migrations. Hatte ein paar Probleme aufgrund von Verbindungszeichenfolgen und welche app.config verwendet wurde, bekam es aber schließlich. Jedoch,diese MSDN-Seite sagt, dass dies automatisch die erste Migration hätte generieren sollen, um mich an den Punkt zu bringen, an dem ich bereits bin. Das hat es nicht getan.RanAdd-Migration InitialSchema um zu erreichen, was in Schritt 1 nicht automatisch erledigt wurde. Dies funktionierte.Fügte eine Eigenschaft zu einem meiner Modellobjekte hinzu und versuchte dann auszuführenAdd-Migration AddSerialToLogEntriesund wurde präsentiert mit:

Es kann keine explizite Migration generiert werden, da die folgenden expliziten Migrationen ausstehen: [201307190100268_InitialSchema]. Wenden Sie die ausstehenden expliziten Migrationen an, bevor Sie versuchen, eine neue explizite Migration zu generieren.

Der Versuch, die Migration auf meine vorhandene Datenbank anzuwenden, ist fehlgeschlagen, was nicht verwunderlich ist.

Die anderen Antworten, die ich oben erwähnt habe, besagten im Grunde, dass ich kein Glück habe, aber wie gesagt, dass sie für ältere Versionen des Entity Frameworks waren. Habe ich hier irgendwelche Optionen?

Beim Schreiben dieser Frage dachte ich, ich könnte SQL Server Management Studio verwenden, um meine Daten in ein SQL-Skript zu exportieren, die gesamte Datenbank zu löschen, EF sie erstellen zu lassen und dann die Skripts auszuführen, um meine Daten wieder in ... I abzurufen werde das morgen versuchen, wenn ich zeit habe, aber ich würde gerne hören, ob es andere möglichkeiten gibt, da ich nicht 100% sicher bin, dass das funktionieren würde und es hassen würde, fehler in den in den prozess eingefügten daten zu haben.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage