Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Note
W tym artykule przyjmuje się, że wiesz, jak korzystać z migracji Code First w podstawowych scenariuszach. Jeśli nie, przed kontynuowaniem przeczytaj Code First Migrations.
Migracje Code First umożliwiają aktualizowanie bazy danych z poziomu programu Visual Studio, ale migracje można też uruchamiać z wiersza polecenia za pomocą ef6.exe. To narzędzie zastępuje migrate.exe.
Znajdź ef6.exe
Po zainstalowaniu pakietu Entity Framework przy użyciu narzędzia NuGet element ef6.exe znajduje się w folderze tools pakietu NuGet. W przypadku funkcji PackageReference pakiet jest przechowywany w folderze pakietów globalnych. Przykład:
%USERPROFILE%\.nuget\packages\entityframework\6.5.2\tools\net45\any\ef6.exe
Zastąp 6.5.2 element wersją programu Entity Framework zainstalowaną w projekcie.
Wyświetlanie opcji
ef6.exe database update --help
Przejście na najnowszą wersję migracji
ef6.exe database update --assembly MyMvcApplication.dll --config ..\web.config
Wymagany jest zestaw zawierający migracje. Inne ustawienia używają konwencji, gdy nie są określone.
Migrowanie do określonej migracji
ef6.exe database update --assembly MyApp.exe --config MyApp.exe.config --target AddTitle
Użyj polecenia --target , aby zastosować wszystkie migracje za pośrednictwem określonej migracji.
Określanie katalogu projektu
ef6.exe database update --assembly MyApp.exe --config MyApp.exe.config --project-dir C:\MyApp
Użyj --project-dir polecenia , aby ustawić katalog projektu używany do rozwiązywania zależności i względnych ścieżek plików.
Określanie konfiguracji migracji do użycia
ef6.exe database update --assembly MyAssembly.dll --migrations-config CustomConfig --config ..\web.config
Jeśli zestaw zawiera wiele klas konfiguracji migracji, użyj --migrations-config polecenia , aby określić, który z nich ma być używany.
Podaj parametry połączenia
ef6.exe database update --assembly BlogDemo.dll --connection-string "Data Source=localhost;Initial Catalog=BlogDemo;Integrated Security=SSPI" --connection-provider System.Data.SqlClient
Jeśli podasz parametry połączenia, musisz również podać nazwę dostawcy.
Generowanie skryptu SQL
Użyj --script, aby zapisać skrypt migracji SQL na standardowe wyjście. Przekieruj dane wyjściowe, aby zapisać skrypt w pliku:
ef6.exe database update --assembly MyApp.dll --script > migration.sql
Użyj instrukcji --source i --target , aby kontrolować zakres migracji uwzględnionych w skryscie.
odpowiedniki opcji migrate.exe
Poniższa tabela mapuje migrate.exe argumenty na ich ef6.exe database update odpowiedniki:
| migrate.exe | aktualizacja bazy danych ef6.exe |
|---|---|
<assembly> |
--assembly |
<configurationType> |
--migrations-config |
<contextAssembly> |
Brak odpowiednika. Umieść go w tym samym katalogu co zestaw przekazany do --assembly. |
/targetMigration |
--target |
/startupDirectory |
--project-dir |
/scriptFile |
--script |
/sourceMigration |
--source |
/startupConfigurationFile |
--config |
/startupDataDirectory |
--data-dir |
/connectionStringName |
--connection-string-name |
/connectionString |
--connection-string |
/connectionProviderName |
--connection-provider |
/force |
--force |
/verbose |
--verbose |
/? |
--help |