2010-12-06 46 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