以声明方式构建以任何类型的节点为根的表达式树
MSDN 说:
编译器还可以构建一个 为您提供的表达式树。一个 编译器生成的表达式树是 总是以某种类型的节点为根 表达式
;也就是说,其 根节点代表 lambda 表达。
但是,如果我想构建一个以 MethodCallExpression、BinaryExpression 等类型的节点为根的表达式树怎么办?并且不想手动执行此操作。
MSDN say:
The compiler can also build an
expression tree for you. A
compiler-generated expression tree is
always rooted in a node of type
Expression<TDelegate>; that is, its
root node represents a lambda
expression.
But what if I want to build an expression tree rooted in a node of type MethodCallExpression, BinaryExpression, etc.? And don't want to do this manually.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
解决方法是声明 2 个辅助函数
用法示例:
The workaround is to declare 2 helper functions
Usage examples: