__MigrationHistory
中的一些行
现在,当我运行我的项目时,我强制执行此错误:
ALTER TABLE DROP COLUMN失败,因为表'yyy'中不存在列'xxx'。
我怎样才能解决这个问题?
答案 0 :(得分:8)
添加新迁移以重新同步:
add-migration MissingXXX -IgnoreChanges // tells EF to just take a snapshot
update-database
现在您又恢复了同步状态,可以继续进行未来的模型更改。
答案 1 :(得分:1)
OK, finally I solved my problem.
I added field 'xxx' to table 'yyy' manually in my database.
答案 2 :(得分:0)
为什么不改变你的表来重新找回丢失的列?然后再尝试放下你的桌子:)
答案 3 :(得分:0)
这里有更多详细信息,因为我遇到了同样的问题,并且此问题对帮助有所帮助: 无论出于什么原因,如果出现此错误: ALTER TABLE DROP COLUMN失败,因为表'yyy'中不存在列'xxx'。 做这个: 手动更新数据库中的表。
答案 4 :(得分:0)
当我尝试向表中添加新字段时,我使用EF Core 3.1.1做到了这一点。
我没有删除MigrationHistory表中的条目,但我还原了上一次迁移,删除了生成的迁移文件,然后使用“添加迁移”再次生成了它们。然后,我注意到了迁移的新的上下方法,其中使用了AlterColumn而不是AddColumn和RemoveColumn。我从以前的Up和Down方法中获得了代码,并且解决了它。