我一直在我的应用程序中成功使用 EF 5 Code First。我大约有40张桌子。但是,我遇到了一个问题,我似乎可以正确处理迁移。所以,我想做的就是以某种方式告诉 EF 将数据库的当前模式视为一个新的起点,并从这个点开始管理它。这样,我可以手动进行必要的架构更改,然后告诉 EF 从这一点开始。
我有办法做到这一点吗?我想我将不得不删除 __MigrationHistory 表,或删除其内容。但我不确定如何最好地继续这样做。
您应该能够执行以下操作:
手动更改数据库以反映模型中不会由迁移处理的更改。现在一切都应该可以正常工作,但是数据库和迁移系统不同步。
Run Add-Migration ManuallyUpdatedDatabase -IgnoreChanges
。这将创建一个完全空的迁移,因此它不会对数据库进行任何更改,但它将确保系统知道已进行的手动更改。这样,手动更改就不会包含在您创建的下一次迁移中。
Run Update-Database
应用空迁移。
从这里开始一切都应该照常进行。您的迁移中只是有一个“缺失的链接”,因为您手动处理了一些更改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)