entity-framework - 添加实体模型时出现错误 3007

标签 entity-framework entity-relationship

将实体模型添加到解决方案时出现错误 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/

相关文章:

c# - EF Code First 异常实体类型不是使用简单 Odata 客户端的当前上下文模型的一部分

c# - 如何使用 EF6 更新多对多表

wcf - EF 4.1 Code First - 使用新上下文/WCF 时未更新 FK 值的更改

iPhone:无法对多对关系进行 NSSortDescriptor。如何排序?

mysql - 如何在SQL中实现聚合? (这与 GroupBy 无关)

java - 一对多关系 : Update removed children with JPA 2. 0

sql - 在关系数据库中,我们可以拥有一个与其他表没有任何关系的表吗?

c# - EntityFramework 首先使用数据库检测复杂类型

c# - Entity Framework 模型-第一个可为空外键

c# - Entity Framework 迁移在使用流畅 API 的扩展方法时抛出异常