我正在制作 LINQ lambda 表达式:
Expression<Func<double, double, double>> add = (x, y) => x + y;
但现在我将如何评估它,比如说找到 2+3?
最佳答案
这应该适合你:
var sum = add.Compile()(2,3);
在某些情况下,您的 Expression
没有泛型类型,您必须使用 DynamicInvoke
来执行它,因为 Compile()
然后将返回一个 Delegate
:
someNonGenericExpression.Compile().DynamicInvoke(2,3);
关于c# - 评估 LambdaExpression?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20012568/