2012-12-18 9 views
109

Wie verwende ich Entity Framework 5 Code First Migration, um ein vollständiges Datenbankskript vom ursprünglichen (leeren) Zustand bis zur letzten Migration zu erstellen?Generieren eines vollständigen SQL-Skripts aus EF 5 Code Erste Migrationen

Der Blog-Beitrag bei MSDN Blog schlägt, dies zu tun, aber es scheint ein leeres Skript zu erstellen: erscheinen

Update-Database -Script -SourceMigration: $InitialDatabase 
+0

https://msdn.microsoft.com/en-us/library/jj591621(v=vs.113).aspx#Generating-Idempotent-Scripts-EF6-onwards –

Antwort

213

Die API geändert zu haben (oder zumindest ist es nicht für mich arbeiten).

die folgende im Package Manager-Konsole ausgeführt wird wie erwartet funktioniert:

Update-Database -Script -SourceMigration:0 
+10

Ich realisiere, das ist die richtige Antwort, aber wie hast du auf der Erde entdeckt, dass 0 funktioniert, wenn der Parameter normalerweise eine Zeichenkette ist ?! –

+20

Nur Versuch und Irrtum wirklich nach dem Versuch, alles, was ich denken konnte, um es in die Arbeit zu überlisten :) –

+0

Erstellt dies eine genaue Kopie der Datenbank? Einschließlich des Tabelleninhalts? – Multitut

2

Matt Wilsons Antwort auf füge ich eine Reihe von Code-first Entitätsklassen hatte keine andere Datenbank als ich ein Backup nicht genommen hatte . Also habe ich folgendes auf meinem Entity Framework Projekt:

Paket öffnen Manager-Konsole in Visual Studio und geben Sie den folgenden:

Enable-Migrations 

Add-Migrations 

Geben Sie Ihre Migration einen Namen wie ‚Initial‘ und dann die Migration erstellen. Schließlich folgendes eingeben:

Update-Database 

Update-Database -Script -SourceMigration:0 

Der letzte Befehl Ihre Datenbank-Tabellen von Ihrem Entitätsklassen schaffen (Ihre Entitätsklassen bereitgestellt gut ausgebildet sind).

Verwandte Themen