我有这样的实体:EF代码优先:如何加载相关数据(父 - 子 - 孙)?
public class DynamicPage {
public int PageId { get; set; }
public int Order { get; set; }
public string MenuText { get; set; }
public string MenuHover { get; set; }
public int? ParentId { get; set; }
public virtual DynamicPage Parent { get; set; }
public virtual ICollection<DynamicPage> Children { get; set; }
}
这个实体可以有3个级别:父 - >子 - >孙。如何加载父级(级别1)惠益所有关联的孩子(级别2)和每个孩子,关联的孙子(级别3)(如果有的话)?感谢帮助。
没有名为'GrandChildren'的房产。你的意思是这个代码:'Include(p => p.Children.Select(c => c.Children))'? –
@Javad_Amiry:是的。其实,我写的“GrandChildren”可以是任何导航属性 - 收藏或参考。 'Include(x => x.SomeCollection.Select(c => c.SomeNavigationProperty))'模式只会导致下一级的Include。您可以重复该无限广告:集合上的“选择”,引用上的简单点状路径。 – Slauma
谢谢,只需几分钟,我就测试它 –