maxwellno1 2014-04-08 06:24
浏览 2179

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要怎么写?

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥100 求数学坐标画圆以及直线的算法
    • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
    • ¥15 名为“Product”的列已属于此 DataTable
    • ¥15 安卓adb backup备份应用数据失败
    • ¥15 eclipse运行项目时遇到的问题
    • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
    • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
    • ¥15 自己瞎改改,结果现在又运行不了了
    • ¥15 链式存储应该如何解决
    • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站