2010-06-23 263 views
1

的名单我有一个查询:LINQ查询返回列表

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) 
     ); 

很明显,因为它是嵌套的LINQ查询 - 每区选出一个IQueryable我弄一套IQueryables的结果。

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

谢谢!

回答

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; 

+1

谢谢!不知道我能做到这一点,而不在每一点上的select语句。 – 2010-06-23 16:06:15