用于打印表达式的库

时间:2012-04-28 09:21:16

标签: c# expression-trees

我正在寻找提供表达式打印功能的库(从lambdas转换为表达式树)。换句话说,它应该在解析示例here时做类似的工作,但显然应该更加完整。有人知道这样的图书馆吗?

1 个答案:

答案 0 :(得分:3)

如果你想要一些表达式的文字表示,而你不在乎它的确切含义,你可以使用ToString()。所有Expression类型都会覆盖此方法。

例如,对于简单表达式num => num < 5ToString()返回num => (num < 5)。但是对于更复杂的表达式,它看起来不再像C#代码了。例如,对于num => num < Math.Pow(5,5),它会返回num => (Convert(num) < Pow(5, 5))