1
EF新手,尝试使用“数据库优先”。EF数据库优先 - 映射错误3025
Error 3025: ... :Must specify mapping for all key properties
(PurchaseUsers.PurchaseUsersId) of table PurchaseUsers.
我有我的数据库3个表:
Purchases Participants PurchaseUsers
PurchaseId ParticipantId PurchaseUsersId
... ... PurchaseId
ParticipantID
表PurchaseUsers
是知道使用买下了参与者(S)是(是)。
起初我没有在该表上的PK,但后来当我试图保存Purchase
时出现以下错误。 谷歌搜索后,我发现我不得不添加一个PK来避免这个错误。
Unable to update the EntitySet 'PurchaseUsers' because it has a DefiningQuery
and no <InsertFunction> element exists in the <ModificationFunctionMapping> element
to support the current operation.
但添加PK创建映射错误,我只是无法弄清楚如何解决这个问题或创建一个映射。 表格PurchaseUsers
本身在我的.edmx模型中不可见,但它在模型浏览器的商店中列出。
谢谢。
UPDATE
当天更改数据库中的一列的名称。 “从数据库更新模型”将新列名添加到模型中的表中,但未删除旧列名。 不得不再次从头开始。 看起来更新功能不能很好地工作。
在数据库中添加主键之后,是否更新过模型(在设计器中)? – Pawel 2012-02-14 05:19:18
@Pawel是的,我做到了。在那一刻,我得到了3025错误。这些关系也是在db级别上设置的。在我的模型中,表参与者和购买之间存在一个mazny-to-many关系。我想这就是事情出错的地方,因为桥表不在模型中连接这两个表。 – Koen 2012-02-14 07:25:17
这很奇怪。你是否尝试过完全删除模型并从头开始创建?如果这个窗台不适合你 - 你能发布一个最小的repro? – Pawel 2012-02-14 21:16:53