在一个对象 [实体框架] 中包含多个对象
本文关键字:包含多 对象 框架 一个对象 实体 | 更新日期: 2024-11-05 03:49:19
>我正在尝试检索项目类别(子类别)列表和项目分类,子列表被检索。但我不知道如何获得分类。
Project project = ctx.Projecten.Include(p => p.ProjectCategories.Select(s => s.Sub.Select(su => su.Sub))).ToList().Find(p => p.ProjectId == projectId);
这些是域类,如您所见,我的ProjectCategorie中有一个分类:
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; }
}
好的更新(误读问题)...
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() 移动到查询的最后一行即可解决此问题。