我刚刚学会了如何在Entity Framework中包含多个级别的属性(在这个帖子上:Entity Framework - Include Multiple Levels of Properties)。 但是当我试图包含一个包含基本实体的集合时,事情就失败了。
这是我的基类:
public partial class Artiste
{
public Artiste()
{
this.Parutions = new HashSet<Parution>();
}
public System.Guid Id { get; set; }
public string Nom { get; set; }
public virtual ICollection<Parution> Parutions { get; set; }
}
我的第二堂课:
public partial class Parution
{
public Parution()
{
this.Artistes = new HashSet<Artiste>();
}
public System.Guid Id { get; set; }
public string Title { get; set; }
public virtual ICollection<Artiste> Artistes { get; set; }
}
Artiste有很多Parutions。 Parution有很多Artistes。 当我在包括他的Parutions时询问一位艺人时:
dbQuery.Include(a => a.Parutions);
在Parutions Artistes中,我只有被查询的Artiste(一位艺人)。我没有得到其他艺人。 我试过这个:
dbQuery.Include(a => a.Parutions.Select(p => p.Artistes));
但是它给出了Artiste已经加载的错误。
如何实现这一目标?