如果第一个包括引用第二个包含,我是否需要执行两个EF包含?

时间:2011-12-13 18:49:55

标签: c# .net entity-framework

我有这行代码选择工作流状态,然后获取映射到它的下一个工作流状态。

status = db.WorkflowStatuses
    .Include(x => x.CurrentMappings.Where(y => y.IsActive && y.NextWorkflowStatus.IsActive))
    .Include(x => x.CurrentMappings.Select(y => y.NextWorkflowStatus).Where(y => y.IsActive))
    .FirstOrDefault(x => x.Id == id);

我的问题是,我是否需要第二个Include,因为我在第一个Include中引用了NextWorkflowStatus?

1 个答案:

答案 0 :(得分:2)

Include表示急切加载,EF中的急切加载不支持过滤或排序,因此您的代码根本无法运行。你不能在包含电话中使用Where