【发布时间】:2016-09-20 08:10:28
【问题描述】:
这就是交易,我已经更改了我的数据库架构,并更改了我的一个表的 PK,并且我已经删除了与旧 PK 相关的所有内容(另一个表中的 FK 引用)。
但是,当我使用 savechanges() 方法插入新实体时出现此异常
ex = {"更新条目时发生错误。有关详细信息,请参阅内部异常。"}
内部异常是
InnerException = {"无效的列名'Audit_ID'。"}
Audit_ID 是旧的 PK。
我试过这个 "Invalid column name" when trying to insert data into database using SQL
这个Invalid column name when trying to add an entity to a database using DbContext
这个Invalid column name after mapping
并没有解决我的问题,所以当我删除了我的整个 edmx 并创建了一个新的时,它也没有用。
ps:我使用的是数据库优先方法
【问题讨论】:
-
你能把
savechanges()ef query也显示出来吗? -
通常删除旧 PK 并添加新 PK 需要在数据库优先方法上更新模型。如果您已删除旧
Audit_IDPK 的所有 FK 引用,则在模型类中您可以设置KeyAttribute为数据库集分配新的 PK。
标签: sql-server asp.net-mvc entity-framework entity-framework-6 ef-database-first