EF代码优先:如何加载相关数据(父子孙)? [英] EF code-first: How to load related data (parent-child-grandchild)?

本文介绍了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级)如果有的话?感谢您的帮助。

This entity may have 3 level: Parent -> Child -> Grandchild. How can I load the Parent (level 1) whit all associated children (level 2) and for each child, associated grandchild (level 3) if any? Thanks to help.

推荐答案

EF 4.1功能和语法:

EF 4.1 feature and syntax:

var entity = context.Parents
    .Include(p => p.Children.Select(c => c.GrandChildren))
    .FirstOrDefault(p => p.Id == 1); // or whatever condition

这篇关于EF代码优先:如何加载相关数据(父子孙)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆