170

出于某种原因,我的迁移似乎已经混乱/损坏/无论如何。我现在只想重新开始,那么有没有办法完全撤消所有迁移,擦除历史记录并删除迁移代码,所以我又回到了原点?

例如)PM> Disable-MigrationsRollback-Migrations

我不想“更新”到原始迁移步骤(即类似InitialSchema目标的东西),因为我再也找不到它了。

4

5 回答 5

363

您可以使用以下方法回滚到任何迁移:

Update-Database -TargetMigration:"MigrationName"

如果要回滚所有迁移,可以使用:

Update-Database -TargetMigration:0

或同等学历:

Update-Database -TargetMigration:$InitialDatabase 

在某些情况下,您还可以删除数据库和所有迁移类。

于 2012-04-23T14:35:12.233 回答
23

对于实体框架核心:

Update-Database -Migration:0
Remove-Migration
于 2017-06-23T09:58:01.517 回答
8

需要明确的是,如果使用 LocalDb,当您想从头开始时,只需通过 Database Explorer 删除数据库,然后enable-migrations -force在 Package Manager Console 中键入。不要通过 App_Data 文件夹删除数据库,否则您将遇到以下问题

于 2013-01-16T00:38:55.077 回答
3
Update-Database -Migration 0
Remove-Migration

文档在这里:https ://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell#update-database 在这里: https : //docs.microsoft.com/en-us/ef /core/miscellaneous/cli/powershell#remove-migration

于 2018-09-15T13:54:40.440 回答
0

我猜他们的文档写错了,对我来说我用过

Update-Database -Target MigrationName
于 2020-05-17T09:56:46.320 回答