0

Entity FrameworkCodeFirstで使用されているサンプルモデルクラスは次のとおりです。

public class Master
{
  public int Id { get; set; }
  public Collection<Detail> Details { get; set; }
}

public class Detail
{
  public int Id { get; set; }
  public Master Master { get; set; }
  public SubDetail SubDetail1 { get; set; }
  public SubDetail SubDetail2 { get; set; }
}

public class SubDetail
{
  public int Id { get; set; }
}

Masterすべての詳細とサブ詳細を明示的にロードしたいと思います。私が使用している詳細をロードするにはInclude

context.Masters.Include("Details").Where(master => master.Id == 1);

サブディテールをロードするには何を使用すればよいですか?

4

1 に答える 1

1

試す

context.Masters.Include(m => m.Details.Select(d => d.SubDetail1))
   .Include(m => m.Details.Select(d => d.SubDetail2))
   .Where(master => master.Id == 1);

非ジェネリック版

context.Masters.Include("Details.SubDetail1")
   .Include("Details.SubDetail2")
   .Where(master => master.Id == 1);
于 2012-06-26T09:43:24.897 に答える