问题标签 [expression-trees]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
11 回答
262073 浏览

c# - 为什么要使用表达式> 而不是 Func?

我了解 lambdas 和 theFuncAction代表。但是表情难住了我。

在什么情况下你会使用 anExpression<Func<T>>而不是普通的 old Func<T>

0 投票
5 回答
352 浏览

math - 我应该在我的数学游戏中使用表达式解析器吗?

我正在为一个班级写一些儿童数学教育软件。

我将尝试以有趣的方式通过随机生成的不同类型的数学问题向不同技能水平的学生提出问题。

使用基于计算机的数学软件的挫折之一是它的僵化。如果有人参加了在线数学课程,您就会知道参加在线测验并因为您的问题没有完全按照他们的形式或一些奇怪的间距问题而抛出正确答案的挫败感。

所以,最初我想,“我知道!我将在答案框中使用表达式解析器,这样我就可以评估他们输入的任何内容,即使它不是同一种形式,我也可以检查如果答案相同的话。” 所以我启动了我的 IDE 并开始实施Shutting Yard 算法。

这将解决它不采取最小形式的分数的问题和其他问题。

然而,我突然想到,一个棘手的学生可以简单地将大部分问题输入答案框中,而我的表达式解析器会尽职尽责地解析并将其评估为正确答案!

那么,我不应该在这种情况下使用表达式解析器吗?我真的必须生成单一形式的答案并进行字符串比较吗?

0 投票
5 回答
23365 浏览

c# - 如何动态创建表达式> 谓词?

我将如何使用表达式树来动态创建一个看起来像...的谓词

这样我就可以像这样将谓词粘贴到 lambda 表达式中...

我只需要指出正确的方向。

更新:对不起,我遗漏了我希望谓词具有上述多个条件的事实。对困惑感到抱歉。

0 投票
3 回答
1911 浏览

linq - 以编程方式将 SQL 查询转换回 Linq 表达式

是否有可能以某种方式以编程方式将 sql 查询转换为 linq 表达式树?sql 查询应该是由这个 linq 查询生成的,所以我认为它是一个穷人将 linq 查询序列化\反序列化为 t-sql 格式。

谢谢你。

0 投票
2 回答
4686 浏览

c# - 表达式与谓词问题

我遇到了一些挑战,我必须创建一个表达式树来表示用户的查询输入。由于我没有时间创建所有可能的用户输入案例,我认为表达式树可以帮助我解决这个问题。

在大多数情况下,它有。然而,我有点难过。我在下面的代码中尝试使用动态创建的表达式执行 List.Find。简而言之,表达式是这样的:

其中 m 是

我已经做到了创造

有表情,没问题。我还为 Exists 声明了一个方法信息

我唯一的问题是创建一个表达式来调用所述方法,将 lambda 作为参数,如下所示

它给出了一个可以理解的例外

我怎么能克服这个?

完整代码:

0 投票
1 回答
2428 浏览

c# - 如何制作 LINQ 表达式来调用方法?

我一直在玩弄DLR并且有点卡在调用方法上。例如,假设我想创建一个表达式来将某些东西压入堆栈:

我被卡住了,因为我不确定如何从 _stack 或项目中获取表达式。有人能把我推向正确的方向吗?

0 投票
4 回答
1247 浏览

.net - 转换和拆箱有什么区别?

在 DLR 的 LINQ 表达式中,这之间有什么区别:

还有这个:

这方面的文档似乎有点粗略。

更重要的是,其中一个等效于此 C# 代码:

ClassB 在哪里有一个隐式或显式运算符可以转换为 ClassA?

0 投票
4 回答
2687 浏览

c# - 如何在 C# 中创建自定义 System.Linq.Expression 类?

是否可以创建自定义表达式类?如果是这样,有没有人有任何例子?从框架抽象 Expression 类继承会带来一个问题,因为它的构造函数需要一个 ExpressionType 参数,这是一个框架枚举类型 - 我显然无法自定义它!

有任何想法吗?

0 投票
2 回答
600 浏览

c# - 表达式树修改问题

我有以下内容:

我想删除参数,并使第一个成员成为子表达式的参数,所以我最终得到:

这需要适用于上述格式的任何表达式树,包括MemberExpressionMethodCallExpression以及任何其他Expression具有.Expression属性的表达式树。例如:

或者

我将如何优雅地实现这一目标?

谢谢

安德鲁

0 投票
3 回答
1168 浏览

.net - 如何解析树数据结构?

我有一个由节点组成的树数据结构,我需要将其解析为表达式树。我的节点看起来像这样(简化):

找到树的底部并向后构建表达式树的最佳/正确方法是什么?你先解析左还是右?