Entity Framework - 迁移 - @objname 不明确

Entity Framework - migrations - @objname is ambiguous

我在尝试更新数据库时遇到了问题。我在模型中更改了 FK 和虚拟 属性。现在,当我尝试更新数据库时出现此错误:

参数@objname 不明确或声明的@objtype (COLUMN) 错误。

在这行代码中,它停止更新数据库:

RenameColumn("dbo.test", "test_Id", "ProgramId"); 

-verbose 属性告诉我这行代码给我错误:

EXECUTE sp_rename @objname = N'dbo.test.test_Id', @newname = N'ProgramId', @objtype = N'COLUMN'

我不知道为什么会给我这个错误,有谁知道自动生成的迁移文件出了什么问题吗?

谢谢,布伦特

我试过你在我使用 EF Core 的项目中所说的,我在迁移中没有得到 RenameColumn class,我得到了:

DropForeignKey(...) , DropIndex(...) , DropColumn(..) 然后是 AddColumn(...), 创建索引(...)和 CreateForeignKey(...)

当然,当我更新数据库时工作正常。

但我搜索了你的问题,似乎 SQL 不知何故感到困惑,像你这样的问题的所有解决方案,都说在 tableName 或 ColumnName 周围使用 [],看来你有其他名称,如这些名称SQL 无法指定它们。

如果你只是告诉我更多关于更改前后的实体,我可以跟随你的脚步并得到像你一样的错误。