2011-12-13 133 views
1

我有這行代碼選擇工作流程狀態,然後獲取映射到它的下一個工作流程狀態。如果第二個包含在第一個包含中被引用,是否需要執行兩個EF包含?

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?

回答

2

Include表示EF中的急切加載和急切加載不支持篩選或排序,因此您的代碼根本無法工作。包含呼叫內部不能使用Where

相關問題