【发布时间】:2014-09-28 06:04:28
【问题描述】:
我想将 foreach 循环转换为 LINQ。 代码如下所示:
foreach (XmlNode localNode in localXmlNodeList)
{
var localKeyNode = localNode.SelectSingleNode(inputKeyName);
var localValueNode = localNode.SelectSingleNode(inputValueName);
if ((localKeyNode == null) || (localValueNode == null))
continue;
localReturn.Add(localKeyNode.InnerText, localValueNode.InnerText);
}
我想使用类似的东西:
from X in Y
let varA = Y.A
let varB = Y.B
where method(varA, varB)
select varA, varB;
但我最终总是使用如下的 foreach 循环:
foreach(var X in Y.Where(varA => something(varA.subA.microSubA, varB.subB.microSubB)))
{
somethingAgain(varA.subA.microSubA, varB.subB.microSubB)
}
我无法介绍“让”。
有人可以帮帮我吗?
【问题讨论】:
-
用foreach代替Linq有什么问题?
标签: linq loops foreach transform let