GroupBy之后不能包含子表

时间:2017-09-07 13:18:22

标签: c# linq include entity-framework-6 eager-loading

我有两个相关的表格:

OrderHeader

  • 编号
  • Truck_name

OrderItem的

  • 编号
  • 订单ID
  • 位置

OrderItem包含OrderHeaderId列(外键关系)。 我的WebService必须使用orderItems选择特定的Order并将其返回(在解析之后)到客户端。由于OrderItem中的重要数据,我必须使用急切加载。我的数据库查询需要首先加载未完成(Status IN 1402,1403 AND Read = 0)的顺序。所以:

context.Configuration.LazyLoadingEnabled = false;
var query = context.OrderHeader
     .Where(o=> new[] { 1402, 1403 }.Contains(o.Status) && o.OrderItem.Any(g => g.Read == 0))
     .OrderBy(o => o.Id)
     .GroupBy(g => g.Group)
     .FirstOrDefault()
     .AsQueryable()
     .Include("OrderItem");

我使用GroupBy取得第一个未完成的Group,每次它返回一个空的OrderItem表。为什么?如何在GroupBy语句后包含子表?

0 个答案:

没有答案