如何在Queryable包含语句

时间:2016-03-10 21:25:08

标签: c# entity-framework iqueryable

假设我有以下三个表

  • A
  • C

表之间有1对多的关系如下:

  • A-> B
  • B-&以及c

我正在使用Entity框架来查询表,而编程是在C#中。 假设,我需要A中的所有列,我执行以下操作:

var query = _context.A; query.where( <where clause> )

如果我需要包含B列以防止延迟加载,

query.Include ( s => s.B );

问题是,如何包含C列以防止延迟加载? 我正在寻找类似的东西:

query.Include ( s => s.B.C )(由于表之间的1对多关系,这不起作用)

1 个答案:

答案 0 :(得分:1)

您可以将第三级加载为查询的一部分,如下所示:

query.Include (s => s.B.Select(b=>b.C));

如果您转到此msdn page中的备注部分,您会发现一些示例,说明如何使用Include扩展方法包含不同级别。