C# System.Linq中的ForEach与webfeel.Css.Extensions中的ForEach有什么区别?

C# System.Linq中的ForEach与webfeel.Css.Extensions中的ForEach有什么区别?,c#,linq,C#,Linq,比如说 System.Linq dogs.ToList().ForEach(dog => Console.WriteLine(dog.Name)); webfeel.Css.Extensions dogs.ForEach(dog => Console.WriteLine(dog.Name)); 两者似乎做了相同的事情,那么有什么区别呢?是否存在性能差异?此外,我认为Linq可能不允许像我上面提到的那样进行函数调用,但它确实可以编译 ForEach是系统的成员。列表,不是Linq的

比如说

System.Linq

dogs.ToList().ForEach(dog => Console.WriteLine(dog.Name));
webfeel.Css.Extensions

dogs.ForEach(dog => Console.WriteLine(dog.Name));

两者似乎做了相同的事情,那么有什么区别呢?是否存在性能差异?此外,我认为Linq可能不允许像我上面提到的那样进行函数调用,但它确实可以编译

ForEach
系统的成员。列表
,不是Linq的一部分。您提供的代码将枚举项目两次,一次用于
ToList
调用,一次用于
ForEach


WebBleep是IEnumerable的扩展(请参阅)。您为该案例提供的代码将对它们进行一次枚举。

ForEach
系统的成员。List
,而不是Linq的一部分。您提供的代码将枚举项目两次,一次用于
ToList
调用,一次用于
ForEach

WebBleep是IEnumerable的扩展(请参阅)。您为该案例提供的代码将枚举它们一次。

您可以查看此主题:您可以查看此主题: