我试图检索ProjectCategories(子类别)列表和ProjectCategorie的类别,检索子列表。但我不知道如何获得分类。
Project project = ctx.Projecten.Include(p => p.ProjectCategories.Select(s => s.Sub.Select(su => su.Sub))).ToList().Find(p => p.ProjectId == projectId);
这些是域类,您可以看到我的ProjectCategorie中有一个Categorie:
public class ProjectCategorie
{
public int ProjectCategorieId { get; set; }
public double MinBedrag { get; set; }
public double MaxBedrag { get; set; }
public bool Aanpasbaar { get; set; }
public bool AutoAanpasbaar { get; set; }
public ProjectCategorie Super { get; set; }
public List<ProjectCategorie> Sub { get; set; }
public Project Project { get; set; }
public Categorie Categorie { get; set; }
}
public class Categorie : BegrotingsPost
{
public int CategorieId { get; set; }
public string Beschrijving { get; set; }
public double MinBedrag { get; set; }
public double MaxBedrag { get; set; }
public Begroting Begroting { get; set; }
public BegrotingsPost Super { get; set; }
}
答案 0 :(得分:8)
好的更新(误读了这个问题)......
Project project = ctx.Projecten
.Include(p => p.ProjectCategories.Select(s => s.Sub.Select(su => su.Sub)))
.Include(p => p.ProjectCategories.Select(s => s.Categorie))
.Find(p => p.ProjectId == projectId)
.ToList();
我可能也会在数据库中执行查找(可能会引入逻辑错误)。 只需将ToList()移动到查询的最后一行即可解决该问题。