c# - 评估 LambdaExpression?

标签 c# linq linq-expressions

我正在制作 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/

相关文章:

c# - 来自 MemberExpression 的反射类型

c# - Microsoft JScript 运行时错误 : 'clientUploadComplete' is undefined

c# - 监听和接受连接的简单 Telnet 控制台

c# - 如何在运行时在 IEnumerable<T> 上创建动态 Select?

c# - 使用 NHibernate 的自定义 Linq 生成器 (AddDays)

c# - Linq to Nhibernate - 比较 2 个列表

c# - 由于关闭而将实际值包装到 DisplayClass 中时获取 ConstantExpression.Value

c# - 为什么 Assembly.GetTypes() 不会返回封闭泛型类型?

c# - 如何在 uwp 平台中将图像转换为字节数组

c# - 如何将 LINQ group 和 ordering 与父表和子表结合起来?