【问题标题】:How to include multiple child into Query?如何将多个孩子包含到查询中?
【发布时间】:2017-01-09 02:53:42
【问题描述】:

我有表 A、B、C、D、E、F 的关系
A(父)-> B ---> C(A部分) A(父)--> D--> E--> F(B部分)

我会参考下面的链接来获得我的答案,但我只能得到 E 部分 B。我不能得到直到 F

点击here

这是我的代码:

var query = db.tableA.Include(c => c.tableB.Select(b => b.tableC))                                                                                 
           .Include(d => d.tableD.Select(e => e.tableE));

【问题讨论】:

  • 据我了解tableEtableF 有关系,您不能包含它。我对吗?如果是这样,什么是关系类型? 一对一一对多还是其他?
  • 是的。我不知道如何包含 tableF。 E-F(1 到多个)。 F 可以为空。
  • 只需将代码中的第二行更改为.Include(d => d.tableD.Select(e => e.tableE.Select(m => m.tableF)));。它应该有帮助
  • 它对你有用吗?
  • 是的。这行得通。谢谢。 :)

标签: c# entity-framework


【解决方案1】:

其中一个tableE 可以拥有tableF 的集合,那么您只需要添加另一个选择:

var query = db.tableA.Include(c => c.tableB.Select(b => b.tableC))
        .Include(d => d.tableD.Select(e => e.tableE.Select(m => m.tableF)));

如果一个tableE可以有一个tableF,那么你应该这样写:

var query = db.tableA.Include(c => c.tableB.Select(b => b.tableC))
        .Include(d => d.tableD.Select(e => e.tableE.tableF));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-26
    • 2014-04-04
    • 2020-02-25
    • 2018-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-29
    相关资源
    最近更新 更多