【问题标题】:Loading grand children in a entity Framework在实体框架中加载孙子
【发布时间】:2013-04-17 16:15:54
【问题描述】:

我有一个以下实体层次结构

  class ClassA {
  ICollection<ClassB> classBs { get; set; }
  }
  class ClassB {
     ClassC classC { get; set; }
     ClassD classD { get; set; }
  }
  class ClassC { 
  }
  class ClassD { 
  }

我希望当我加载 classA 的实例时,应该填充 classB 的所有相关实例及其相关的 ClassC 和 classD 实例。在我的存储库中编写的代码类似于:

 context.ClassAs.Include(c => c.classBs)

这会返回 classB 的所有相关实例,但 classB 有 classC 和 ClassD,它们不会被填充。我在网上查看了一些资源,但没有显示如何急切加载这种简单的层次结构。任何帮助将不胜感激。

【问题讨论】:

    标签: c# .net entity-framework


    【解决方案1】:

    一种解决方案是使用Select 仅包含您要加载的子项的子项,例如

    context.ClassAs
           .Include(c => c.classBs.Select(c=>c.ClassC))
           .Include(c => c.classBs.Select(d=>d.ClassD))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多