Entity Framework Core - Master Details 详细信息查询

Entity Framework Core - Master Details Details query

我看到很多 post 展示了如何在 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);

但是没写出有用的东西

是的,这是可能的。在 Include 之后你可以调用 ThenInclude

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