Aspnetboilerplate 存储库查询加载相关数据

Aspnetboilerplate 存储库查询加载相关数据,aspnetboilerplate,Aspnetboilerplate,microsoft文档使用如下示例演示: var blogs = context.Blogs .Include(blog => blog.Posts) .ThenInclude(post => post.Author) .ThenInclude(author => author.Photo) .ToList(); 有没有一种方法可以通过以下方式实现: Abp.Application.Ser

microsoft文档使用如下示例演示:

var blogs = context.Blogs
        .Include(blog => blog.Posts)
            .ThenInclude(post => post.Author)
                .ThenInclude(author => author.Photo)
        .ToList();
有没有一种方法可以通过以下方式实现:

Abp.Application.Services.IRepository

我已经可以看到
IQueryable GetAllIncluding
方法,但我需要的不仅仅是下一个层次。

来自以下文章:

公共异步任务GetDetailAsync(EntityDto输入) { var@event=wait\u eventRepository .GetAll() .包括(e=>e.注册) .ThenInclude(r=>r.User) .Where(e=>e.Id==input.Id) .FirstOrDefaultAsync(); // ... } 在
i假设
之后进行了抽象
然后包括
,但发现这是不切实际的:

摘自以下文章:

公共异步任务GetDetailAsync(EntityDto输入) { var@event=wait\u eventRepository .GetAll() .包括(e=>e.注册) .ThenInclude(r=>r.User) .Where(e=>e.Id==input.Id) .FirstOrDefaultAsync(); // ... } 在
i假设
之后进行了抽象
然后包括
,但发现这是不切实际的:

    • 您也可以这样做:

      公共异步任务GetDetailAsync(EntityDto输入) { var@event=wait\u eventRepository .GetAllIncluding(e=>e.Registrations,e=>e.Registrations.User) .FirstOrDefault(e=>e.Id==input.Id); // ... } 唯一的限制是,由于Intellisense中的错误,在包含集合后不能包含第二级:。

      您也可以这样做:

      公共异步任务GetDetailAsync(EntityDto输入) { var@event=wait\u eventRepository .GetAllIncluding(e=>e.Registrations,e=>e.Registrations.User) .FirstOrDefault(e=>e.Id==input.Id); // ... }
      唯一的限制是,由于Intellisense中的一个错误,在包含集合后不能包含第二级:。

      可能只有我一个人,但一开始我对“GetAll()”方法的实际名称有点困惑。我错误地认为它在那个时候返回了实际的实体。这只是一个想法——但我个人会发现“GetAllQuery”这个名字更明显。请不要将此视为严厉的批评-就我看待事物的方式:-)可能只有我一个人,但一开始我对“GetAll()”方法的实际名称有点困惑。我错误地认为它在那个时候返回了实际的实体。这只是一个想法——但我个人会发现“GetAllQuery”这个名字更明显。请不要把这看作是严厉的批评——这是我看待事物的方式:)“我已经可以看到IQueryable GetAllIncluding方法,但我需要比下一个级别更深入地获取信息。”我的示例获取的信息比下一个级别多(“e=>e.Registrations.User”),为什么这对您不好?这基本上与使用“包含”和“然后包含”是一样的,但是结合使用“GetAllIncluding…因为它没有给我在原始问题中已经说过的内容添加任何新的内容。别担心,这很好:-)好的。你问题的最后一句让我明白你知道“GetAllIncluding”“存在,但您认为它只能降低一个级别。”我已经可以看到IQueryable GetAllIncluding方法,但我需要更深入地降低一个级别。我的示例是降低一个级别以上(“e=>e.Registrations.User”),为什么这对您不好?这基本上与使用“包含”和“然后包含”是一样的,但是结合使用“GetAllIncluding…因为它没有给我在原始问题中已经说过的内容添加任何新的内容。别担心,这很好:-)好的。你问题的最后一句让我明白你知道“GetAllIncluding”“存在,但你认为它只能降低一级。