我正在寻找提供表达式打印功能的库(从lambdas转换为表达式树)。换句话说,它应该在解析示例here时做类似的工作,但显然应该更加完整。有人知道这样的图书馆吗?
答案 0 :(得分:3)
如果你想要一些表达式的文字表示,而你不在乎它的确切含义,你可以使用ToString()
。所有Expression
类型都会覆盖此方法。
例如,对于简单表达式num => num < 5
,ToString()
返回num => (num < 5)
。但是对于更复杂的表达式,它看起来不再像C#代码了。例如,对于num => num < Math.Pow(5,5)
,它会返回num => (Convert(num) < Pow(5, 5))
。