如何使用双向查找多对多配置实体框架

时间:2014-04-23 19:59:22

标签: c# entity-framework

我不知道如何正确地标题这个问题,所以我尽力提出一个描述性的标题。

基本上,我有一个实体框架实体,如下所示......

public class LegalDocument
{
    public int ExampleId { get; set; }
    public virtual ICollection<LegalDocument> LegalDocuments { get; set; }
}

LegalDocument实体需要能够引用其他LegalDocument。反方向,我需要能够看到其他LegalDocument引用此LegalDocument的内容。

所以它就像几个Entity Framework导航属性一样,但我不知道如何指定其中一个属性用于LegalDocument中引用的LegalDocument,与引用这个的其他LegalDocument

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

您可以在LegalDocument类中使用此方法维护代码中的关系。

public void RelateDocument(LegalDocument document)
{
    LegalDocuments.Add(document);
    document.LegalDocuments.Add(this);
}

使用它来关联文档而不是直接使用LegalDocuments.Add()

这种方式LegalDocuments导航属性链接到当前实例添加的文档和添加当前实例的文档。

答案 1 :(得分:0)

最终使用流畅的API HasMany().WithMany()轻松实现。