2010-12-06 56 views

回答

6

这将转化为这样的事情:

var list1 = orderedList.SelectMany(ol => ol.Er, (ol, er) => new { ol, er }) 
         .SelectMany(z => z.er.Rd, (z, rd) => new { z, rd }) 
         .Where(z2 => z2.rd.frt != "") 
         .Select(z2 => z2.z.ol) 
         .ToList<CRInfo>(); 

的“Z”和“Z2”位透明标识符,使用C#编译器通过查询传播多范围的变量。

你可能想下载LINQPad,我相信你可以很容易地翻译这样的查询表达式。

1

好了,除了明显的事实,你的代码已经 C#代码...

我假设你想获得实际可枚举的方法调用?如果是这样,你可以编译它并把它扔进Reflector