我想知道(v3 +)编译器为采用表达式参数的方法构建LINQ表达式需要采取的步骤。特别是,编译器是否使用LeafExpressionConverter
使用或共享逻辑? (这可能需要先生成一个Expr
,然后转换它。)如果有一个单独的机制,是否采取了任何措施来确保与LeafExpressionConverter
平等?
答案 0 :(得分:2)
是的,我相信它使用了LeafExpressionConverter.QuotationToLambdaExpression
。在开源编译器代码库中搜索quote_to_linq_lambda_info
。