2 maxwellno1 maxwellno1 于 2014.04.08 14:24 提问

ef6 codefirst 多对多关系如何在查询时包含实体的引用对象

例如有3个实体

public class A
{
    public string Id {get; set;}
    public List<B> BList {get; set;}
}

public class B
{
    public string Id {get; set;}
    [ForeignKey("CObj")]
    public string CId {get; set;}
    public C CObj {get; set;}

    public List<A> AList {get; set;}
}

public class C
{
    public string Id {get; set;}
    public string Desc {get; set;}
}

在查询时 我使用如下linq

using(var db = new MyContext())
{
    var linq = db.Set<A>().Include(e=>e.BList).Where(e=>e.Id == "exampleId").FirstOrDefault();
}

得到的实例A中的BList有内容,但是BList所有B实例的C属性是null。有没有办法能够把C对象也包含进来?有的话linq要怎么写?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!