LINQ查询返回列表列表

Ell*_*hes 1 c# linq linq-to-sql

我有一个问题:

from m in dc.ReportingMonths
where m.Month.Value == month
select (from k in m.KPI_Actives
        where k.DateActive.Year == year
        select (from r in dc.ReportingViews
                where r.KPIID == k.KPIID select r)
       );
Run Code Online (Sandbox Code Playgroud)

显然,因为它是嵌套的LINQ查询 - 每个返回一个IQueryable,我得到一组IQueryables作为结果.

我如何编写一个类似的查询,而不只是返回一个ReportingViews的单个平面列表(如最后一个查询返回)而不使用foreach循环来创建新列表?

谢谢!

Mar*_*ell 6

就像是:

from m in dc.ReportingMonths where m.Month.Value == month
from k in m.KPI_Actives
where k.DateActive.Year == year
from r in dc.ReportingViews
where r.KPIID == k.KPIID
select r;
Run Code Online (Sandbox Code Playgroud)