实体框架核心-主详细信息详细信息查询

时间:2020-11-11 16:28:42

标签: entity-framework linq entity-framework-core master-detail

我看到很多帖子,展示了如何在Entity Framework中执行查询以检索主详细数据,例如:

IQueryable<myobj> foo = _context.Foos.Include(x => x.FooDetails).Where(x => x.Id == fooId);

但是我必须处理一个更困难的案例。主细节,每个细节都有自己的细节。 像这样:

Foo-> FooDetails-> FooDetailsInfo

这可能吗?如果是,怎么办?当然,愚蠢的解决方案存在并且使用循环。有没有更聪明的方法可以达到这个目标?

我试图编辑线路代码

IQueryable<myobj> foo = _context.Foos.Include(x => x.FooDetails).Where(x => x.Id == fooId);

但是我没有写任何有用的东西。

1 个答案:

答案 0 :(得分:1)

是的,有可能。在Include之后,您可以致电ThenInclude

var foo = _context.Foos
    .Include(x => x.FooDetails)
    .ThenInclude(fd => fd.FooDetailsInfo)
    .Where(x => x.Id == fooId);