How do I undo the last Add-Migration command?
Entity FrameworkEntity Framework-5Entity Framework-MigrationsEntity Framework Problem Overview
I have created a migration using the Add-Migration
command, but I'd like to change the name of that migration. How can I undo the migration command, so that I can regenerate it using the new desired name?
Is it just a matter of deleting the generated files, or this could be a bad idea?
Entity Framework Solutions
Solution 1 - Entity Framework
If you haven't used Update-Database
you can just delete the migration file. If you've run the update you should roll it back using Update-Database -TargetMigration "NameOfPreviousMigration"
then delete the migration file.
Reference:
http://elegantcode.com/2012/04/12/entity-framework-migrations-tips/
Solution 2 - Entity Framework
If you haven't executed the migration yet with Update-Database
, you can run Add-Migration
again with the same name (you may need to use -Force
) to re-execute the scaffolding. This is noted in the output of the Add-Migration
command.
Solution 3 - Entity Framework
Just use command
Remove-migration
It will remove last added migration and update snapshot. It will not affect database so you have to rollback db in first place.
Solution 4 - Entity Framework
With EntityFrameworkCore 2.0 comes the model snapshot. You will need to run the remove migration command in order to update the model snapshot. I have read that EF Core will recognize any update and revert the snapshot for you if you manually delete the migration but this has not worked for me.
https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/migrations
https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/dotnet#dotnet-ef-migrations-remove
Solution 5 - Entity Framework
To add to @Ben 's answer, when using the dotnet ef
command variety this is the remove command you need:
dotnet ef migrations remove
Which will remove your last migration and update the model snapshot.
Solution 6 - Entity Framework
Update your last perfect migration via this command :
Update-Database –TargetMigration
Solution 7 - Entity Framework
Just use command:
Update-Database nameMigration -context nameContext
And Then
Remove-migration -Context nameContext