LINQ Where(predicate)和FirstOrDefault(predicate)有什么区别?

4
有没有明显的性能差异:
something.Where(predicate).FirstOrDefault();

and

something.FirstOrDefault(predicate);

我倾向于同时使用两者,但想知道在性能方面是否有明显的优胜者。


与大多数优化形式一样,最好的选择是自己尝试并观察结果。进行自己的基准测试以查看对您的应用程序最佳的方案。 - Adam Maras
1个回答

10

这取决于此 Where 是否针对 IQueryableIEnumerable

如果是针对 IQueryable,则差异基于提供程序的实现,但很可能没有区别并且会产生相同的查询。

如果是针对 IEnumerable,则应该是可以忽略不计的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接