合并 Entity Framework 中的迁移条目

Merging migration entries in Entity Framework

我有一个 Entity Framework 6 CF 项目,其中已经进行了一些迁移。

模型现已稳定,无需保留已经存在的迁移历史。

有没有办法重置模型并将所有迁移命令合并到初始迁移中?

例如,第一次迁移添加一个列,而第二次迁移添加一个唯一的非聚集索引。我现在想直接在 OnModelCreating 中而不是在单独的迁移中查看所有这些更改。

迁移有 UpDown。您始终可以通过拆除迁移然后添加新迁移来重新搭建您的应用程序。 Down 过程不会更改您的模型,只会更改数据库。使用 Update-Database -Target:migrationTargetNameUpdate-Database -TargetMigration:migrationNumber.

如果您想要从没有数据库开始并以当前模型结束的迁移,您可以使用 Update-Database -TargetMigration:0 拆除所有迁移。最好拆除数据库,然后 运行 Update-Database 作为验证数据库更改是否全部同步的测试。

请记住,如果您将迁移分解为 0 然后 运行 和 Add-Migration,您将需要仔细查看生成的脚手架,因为它会可能与增量更改截然不同。