Asp.net mvc 3 使用LINQ在查询中包含子项?

Asp.net mvc 3 使用LINQ在查询中包含子项?,asp.net-mvc-3,linq,entity-framework-4.1,Asp.net Mvc 3,Linq,Entity Framework 4.1,使用mvc3和实体框架4。 在sql server中,“步骤”表通过stepID对“问题”具有外键约束。 查询(以下)步骤包括所有相关问题 var steps = from b in db.Steps.Include(s => s.Questions) orderby b.StepOrder select b; return View(steps.ToList()); 我还想提取与问题相关的“答案”。 在sql server中,“问题”表

使用mvc3和实体框架4。 在sql server中,“步骤”表通过stepID对“问题”具有外键约束。 查询(以下)步骤包括所有相关问题

var steps = from b in db.Steps.Include(s => s.Questions)
            orderby b.StepOrder
            select b;

return View(steps.ToList());
我还想提取与问题相关的“答案”。 在sql server中,“问题”表具有通过问题ID与“答案”对应的外键约束。
如何更改查询以包括与步骤关联的问题相关联的答案

您需要
选择
包含
中的孙子辈

var steps = from b in db.Steps.Include(s => s.Questions.Select(q => q.Answers))
            orderby b.StepOrder
            select b;

return View(steps.ToList());

请参阅EF教程中的“热切加载多个级别”部分。

感谢您提供详细答案!Nemesv,最后一个问题,我该如何获得答案?弄明白了…忽略我最后的评论…谢谢你的帮助