选择缺失。然后包括EF查询

时间:2018-03-30 19:43:57

标签: c# sql sql-server entity-framework-core

我的查询结果是n ^ 3,所以我简化了它。我找到了一种方法将它写为n ^ 2但由于某种原因缺少.ThenInclude属性。这不是写它的正确方法吗?

test.Include(t => t.a)
     .Include(t => t.b)
         .ThenInclude(b => b.c)
     .Where(t => Users.Exists(u => u.Id == t.a.Id))
     .Select( t => t.b)
     .ToListAsync()

这将返回' b'但是当我尝试访问它时,b.c为null。

1 个答案:

答案 0 :(得分:2)

来自Microsoft文档:

  

如果更改查询以使其不再返回查询开头的实体类型的实例,则忽略包含运算符。

https://docs.microsoft.com/en-us/ef/core/querying/related-data

您需要将查询重写为最初返回“b”值。