2012-12-18 18 views
109

Jak korzystać z Entity Framework 5 Code First Migration, aby utworzyć pełny skrypt bazy danych od początkowego (pustego) stanu do najnowszej migracji?Generowanie pełnego skryptu SQL z kodu EF 5 Pierwsze migracje

blogu w MSDN Blog sugeruje, aby to zrobić, ale wydaje się, aby utworzyć pusty skrypt:

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

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

Odpowiedz

213

API wydaje się zmieniły (lub przynajmniej, że nie działa dla mnie).

Uruchomienie następuje w konsoli Package Manager działa zgodnie z oczekiwaniami:

Update-Database -Script -SourceMigration:0 
+10

Zdaję sobie sprawę, że jest to poprawna odpowiedź, ale jak na ziemi odkryłeś, że 0 działa, gdy parametr jest normalnie ciągiem ?! –

+20

Po prostu próbuj i naprawiaj błędy po wypróbowaniu wszystkiego, co mogłem wymyślić, aby oszukać to w pracy :) –

+0

Czy tworzy to dokładną kopię bazy danych? W tym zawartość tabeli? – Multitut

2

Aby dodać odpowiedź Matta Wilsona miałem kilka klas Kod Podmiotu pierwszego, ale nie ma bazy danych, ponieważ nie miały kopię zapasową . Więc zrobiłem następujące w moim projekcie Entity Framework:

konsoli Menedżer otwarcia opakowania w Visual Studio i wpisz następujące polecenie:

Enable-Migrations 

Add-Migrations 

Daj migracja nazwy takie jak „początkowe”, a następnie utworzyć migracji. Na koniec wpisz:

Update-Database 

Update-Database -Script -SourceMigration:0 

Ostatnie polecenie utworzy tabele bazy danych z twoich klas jednostek (pod warunkiem, że twoje klasy jednostek są dobrze uformowane).

Powiązane problemy