【问题标题】:Defining Many-to-Many Association in Entity Framework在实体框架中定义多对多关联
【发布时间】:2011-07-30 22:12:07
【问题描述】:

我的 edmx 中有以下表格:

错误

Id, Description, solved, officeId, siteId

网站

id, location, name , officeId

办公室

officeId, officeName

办公室到站点之间的映射是一对多的(办公室可以有许多站点实例)。

我想创建从错误到站点的多对多关联 所以我可以直接访问站点属性。 我总是在映射中保持错误。 有人可以指导我怎么做吗?

提前致谢

【问题讨论】:

    标签: entity-framework ado.net entity-relationship mapping-model


    【解决方案1】:

    您不需要在 edmx 的 Erros 表中添加 officeId 之类的外键属性。而不是在实体之间添加那些添加关联(右键单击您的实体并选择 addnew-> associatoin )。添加关联时,您可以定义关系(一对多、可能对多...)。

    【讨论】:

    • 但这是错误的,错误和站点之间的关系是多对多的,我总是不断收到映射错误
    • 如果错误和站点是多对多的,则没有必要在错误表中保留站点 ID。如果您在错误和站点实体框架上创建了多对多关系,则实体框架将在您的数据库中添加另一个表以保留 siteId 和 ErrorId 的关系。并确保在映射后重新生成数据库。否则,您将收到映射错误。
    • 当我创建多对多关联时,我总是在映射关联时出错。那是我的问题。因为错误可以有很多站点实例,而站点也可以有很多错误。
    • 您是否在删除错误表中的 SiteId 并添加导航属性后尝试过?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-08
    • 1970-01-01
    • 1970-01-01
    • 2013-02-26
    • 2012-01-10
    相关资源
    最近更新 更多