Entity framework Core Update-database specific migration
I am trying to figure out how to run a specific migration from the package manager in nuget.
I have tried to run:
update-database -TargetMigration test32
But I do get this message:
A parameter cannot be found that matches parameter name 'TargetMigration'.
I read about that command from Microsoft's documentation to a previous ef version.
So I am not sure how it is in ef core.
Solution 1:
According to EF Core Docs, correct parameter name is -Target
(for EF Core 1.1) or -Migration
(for EF Core 2.0)
so in your case:
update-database -target test32
or
update-database -migration test32
"Modern" way is to use "regular" command prompt and .NET Core CLI, and command like dotnet ef database update <target>
Solution 2:
The best answer given by Dmitry is a bit incorrect.
There's no parameter -Target
. The only parameter that can be applied is -Migration
.
Therefore, the right answer is:
Update-Database -Migration test32
Solution 3:
For EF Core 3.1 via Package Manager Console:
dotnet ef database update YourMigrationName
Solution 4:
Just wanted to add to what Plastiquewind mentioned. In the current version, there is no -target parameter. You have to use -migration. Also, you can specify the context (if you have more than one) with the -context parameter.
Update-database -context MyContext -migration MyMigration