EF数据库优先 - 映射错误3025

时间:2012-02-13 19:20:23

标签: entity-framework-4 database-first

EF新手并尝试使用“数据库优先”。

Error 3025: ... :Must specify mapping for all key properties
                    (PurchaseUsers.PurchaseUsersId) of table PurchaseUsers.

我在我的db 3表中:

Purchases       Participants        PurchaseUsers
PurchaseId      ParticipantId       PurchaseUsersId
...             ...                 PurchaseId
                                    ParticipantID

表格PurchaseUsers是知道哪些参与者使用购买。

起初我没有在该表上使用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模型中不可见,但它在模型浏览器的商店中列出。

感谢。

更新

今天更改了数据库中列的名称。 “从数据库更新模型”将新列名添加到模型中的表中,但未删除旧列。 不得不再次从头开始。 看起来更新功能效果不佳。

1 个答案:

答案 0 :(得分:1)

这很奇怪。从数据库更新模型应该使模型和数据库同步。尝试从头开始删除并重新创建模型。