【发布时间】:2018-09-05 06:55:59
【问题描述】:
我不小心从 __MigrationHistory 表中删除了数据,我尝试将新表和列更改迁移到 db。此时EF6显示错误
"There is already an object named 'xxxx' in the database.".
我用这个命令试过了,对表列的变化没有影响。
Add-Migration MyMigration1 -IgnoreChanges
Update-database -Force
有很多关于重新创建数据库或其他的建议。但是这些方式可能会影响数据丢失到我的数据库中,其中包含大量测试数据,我无法丢失任何数据。如何在不丢失任何数据的情况下解决此错误。如果有人请...
更新
终于找到了解决问题的方法。我不确定这是解决此类问题的首选方法,但它对我有用。
我清理了 __MigrationHistory 表中的数据,尝试迁移新数据库,并将新数据库的 __MigrationHistory 中的数据复制到旧数据库,然后将 AutomaticMigration 设置为 true 并运行 update-database 命令,问题就解决了。
【问题讨论】:
标签: asp.net-mvc entity-framework entity-framework-6