将实体模型添加到解决方案时出现错误 3007。
我找到了这些链接:
Good explination
Short answer
关于这个错误:
Error 1 Error 3007: Problem in Mapping Fragments starting at lines 89, 94: Non-Primary-Key column(s) [Person_ID] are being mapped in both fragments to different conceptual side properties - data inconsistency is possible because the corresponding conceptual side properties can be independently modified.
他们的答案:我同意他们的结论,只需删除标量属性 Person_ID 并保留导航属性,我的问题就解决了。但是,这不是很可扩展,因为我正在动态构建我的数据库并且我的实体经常更新。我不想每次更新我的实体时都必须经过并清理它。
我的问题:有没有办法通过更正 EF 构建实体的方式来修复错误?或者有没有办法通过代码删除标量属性?也许我忽略了一些选项。
最佳答案
尝试使用实体模型设计从实体集中删除外部属性列,它将解决您的问题
例如
我们有两张 table ,一张是 客户 另一个是订购 ,使用实体模型设计,我们在执行此 Ado.net Entity Framework 时添加了客户和订单之间的关联,我将向下面的两个表格添加导航属性。
喜欢
Customer.Orders - 这里的订单是列表
订单.客户
一-多关系。
所以我们需要删除名称为 的属性客户 ID 【外键列】来自订购 实体集。
以供引用:
http://social.msdn.microsoft.com/forums/en-US/adodotnetentityframework/thread/2823634f-9dd1-4547-93b5-17bb8a882ac2/
关于entity-framework - 添加实体模型时出现错误 3007,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1369656/