我想在 LINQ 中执行与以下操作相同的操作,但我不知道如何操作:
IEnumerable<Item> items = GetItems();
items.ForEach(i => i.DoStuff());
真正的语法是什么?
最佳答案
IEnumerable
没有 ForEach 扩展;仅限List<T>
。所以你可以这样做
items.ToList().ForEach(i => i.DoStuff());
或者,编写您自己的 ForEach 扩展方法:
public static void ForEach<T>(this IEnumerable<T> enumeration, Action<T> action)
{
foreach(T item in enumeration)
{
action(item);
}
}
关于IEnumerable<T> 的 foreach 的 LINQ 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/200574/