【发布时间】:2011-01-10 13:23:49
【问题描述】:
我想知道哪个表达式更快,哪个更受欢迎:
myList.Select(a => a.Property)
.Where(a => !String.IsNullOrEmpty(a))
myList.Where(a => !String.IsNullOrEmpty(a.Property))
.Select(a => a.Property)
当然是为什么?
通常我的问题是:我应该使用Where 后跟Select 还是Select 后跟Where?
【问题讨论】:
-
它们不一样,也不编译。第二个应该是
a => !string.IsNullOrEmpty(a.Property) -
将代码修复为几乎可以肯定的样子。
-
@Eamon - 几乎,我拿出了一个额外的
a =>。谢谢!
标签: linq performance lambda