For some reason, my migrations appear to have been jumbled/corrupted/whatever. I'm at the point where I just want to start over, so is there a way to completely undo all migrations, erase the history, and delete the migration code, so I'm back to square one?
e.g.) PM> Disable-Migrations
or Rollback-Migrations
I don't want to "update" to an original migration step (i.e. something like an InitialSchema
target) because I can't find it anymore.
You can rollback to any migration by using:
Update-Database -TargetMigration:"MigrationName"
If you want to rollback all migrations you can use:
Update-Database -TargetMigration:0
or equivalent:
Update-Database -TargetMigration:$InitialDatabase
In some cases you can also delete database and all migration classes.
To be clear, if using LocalDb, when you want to start from scratch just delete the database via the Database Explorer and then type enable-migrations -force
in the Package Manager Console. Do not delete the database via the App_Data folder or you will have the following issue.
For Entity Framework Core:
Update-Database -Migration:0
Remove-Migration
Update-Database -Migration 0
Remove-Migration
The documentation is here: https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell#update-database
and here: https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell#remove-migration