首页 > 解决方案 > 手动删除迁移并在 ef core 中以相同名称再次添加后出现重复属性错误

问题描述

我有一个名为 Initial Create 的迁移,在修改模型后,我手动删除了迁移和数据库。在我用相同的名称重新创建迁移之后,它就像已经存在相同的迁移一样。

我尝试以各种方式删除和重新创建迁移和数据库,但仍然会发生这种情况,如果我使用相同的名称,它使用不同的名称,但我想深入了解。据我所知,唯一可以保存迁移的地方是_MigrationsHistory数据库,但我删除了所有内容。

示例:Type'InitialCreate'已经定义了一个'BuildTargetModel'使用相同参数类型调用的成员

标签: c#entity-frameworkasp.net-core

解决方案


您不能只删除迁移文件。您必须使用 EF 命令将其删除:

dotnet ef migrations remove

添加迁移时,MyContextSnapshot.cs会添加/修改文件,这不仅会记录已应用的迁移,还会记录已添加的迁移。您可能必须删除此文件以及所有迁移并清空数据库,然后才能重新开始。然后,当您需要删除不再想应用的迁移时,请记住始终使用上述命令。


推荐阅读