首页 文章

EF错误 - 无法更新EntitySet,因为它具有DefiningQuery

提问于
浏览
0

我已从表中删除了PrimaryKey,刷新了EDMX,现在我在执行db.SaveChanges()时收到此错误消息:

Unable to update the EntitySet 'Results' because it has a DefiningQuery and no element exists in the element to support the current operation.

现在...... 1 - 我不想在我的 table 上使用PrimaryKey . 该表只是一包 Value ,不需要PK . 2 - 我读了另一篇帖子,有人建议从EF生成的EDMX中删除DefiningQuery元素 . 它不起作用,我避免手动更改自动生成的EDMX .

知道我怎么能避免这个错误,而不是在我的表中定义PK?

谢谢 .

1 回答

  • 0

    在Entity Framework中,一切都必须有一个键,至少在模型中 . 您可以从数据库中删除它,但仍然需要在模型中定义一个键,它可以是一个复合键,以确保它是唯一的 . 否则EF将无法正确实现或保存对象 .

    但是,无论如何我都会在表格中使用主键 . 拥有一个身份字段并不是一件麻烦事,你不必担心自己找到一个独特的字段组合 . 我无法想象这个表不需要一些身份概念,或者它真的有两个完全相同的行吗?

相关问题