在 Web 应用程序中,我使用 linq To Object 查询来进行数据提取/合并。 为了更容易调试,我想在生成的 HTML 中直接显示 linq 查询结构;像
Bananas
->Where color='blue'
->Where size>'20cm'
->Take 25
确实是表达式树的表示。
这可能吗?怎么办?
最佳答案
您可以这样做,但是您必须编写自己的表达式树访问器(一个派生自 ExpressionVisitor
的类)。也就是说,您必须编写遍历作为 LINQ 查询的表达式树并构建所需字符串的代码。
有关表达式树访问者的更多信息,请参阅 http://msdn.microsoft.com/en-us/library/bb882521(v=vs.90).aspx .
Web 上实际上有一个非常有趣的示例已经完成了大部分工作:http://pelebyte.net/blog/2011/05/13/doing-simple-things-with-expressionvisitor/
关于c# - 获取 Linq To 对象查询的字符串表示形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20612864/