简短的回答:不。
较长的答案可能不相关:
- 如果将lambda分配给委托类型(例如
Func
或Action
),则将获得一个匿名委托。 - 如果将lambda分配给expression类型,则将获得一个表达式树,而不是一个匿名委托。然后可以将表达式树编译为匿名委托。
编辑:这是表达式的一些链接。
- System.Linq.expression.expression(TDelegate)(从此处开始)。
- 具有委托的Linq内存(例如System.Func)使用System.Linq.Enumerable。带有表达式的Linq to SQL(以及其他任何东西)使用System.Linq.Queryable。检查这些方法的参数。
- ScottGu的解释。简而言之,Linq内存中将产生一些匿名方法来解决您的查询。Linq to SQL将产生一个表示查询的表达式树,然后将该树转换为T-SQL。Linq to Entities将产生一个表示查询的表达式树,然后将该树转换为适合平台的SQL。



