是否有适用于 VS 2012 的表达式树可视化工具?
Posted
技术标签:
【中文标题】是否有适用于 VS 2012 的表达式树可视化工具?【英文标题】:Is there an Expression Tree Visualizer for VS 2012? 【发布时间】:2012-04-28 13:50:00 【问题描述】:搜索了一下,发现到处都是 VS 2008,而且新的 VS 2012 在安装目录中没有 Visualizers 文件夹。或者,我是否错过了一些我应该能够打开的东西?
【问题讨论】:
【参考方案1】:您可以做的是修复 vs 2010 的可视化工具,使其在 2012 年正常工作。这很容易。只需从此项目中获取源代码:http://exprtreevisualizer.codeplex.com/ 并将 ExpressionTreeViewer 项目的 DebuggerVisualizers 程序集引用更改为:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ReferenceAssemblies\v2.0\Microsoft.VisualStudio.DebuggerVisualizers.dll
以便它与最新版本的 vs2012 一起使用。之后将结果复制到
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Packages\Debugger\Visualizers
它应该可以工作
【讨论】:
直到我将目标更改为 .net 4.5、作为发布版本构建并对程序集进行了强签名后才为我工作。我不知道到底需要哪一个。 作为更新weblogs.asp.net/lichen/archive/2014/02/10/… 展示了如何让它在 Visual Studio 2013 中工作 在我使用发布在 sachabarbs.wordpress.com/2012/04/18/expression-tree-visualizer 的项目并将其更新为使用 Microsoft.VisualStudio.DebuggerVisualizers.dll 的 12.0.0.0 版之前,我无法工作 同意亚历克斯。我也必须这样做才能让它工作,关键是添加 [assembly] 属性【参考方案2】:没有,但你有 DebugView,在调试模式下,有一个具有相同属性的类的代理,并添加了一个 DebugView。就是文字之类的。此外,Mono.Linq.Expressions 有一个用于编写 C# 代码的表达式的文本编写器,请查看。
【讨论】:
【参考方案3】:当我再次出现此问题时,我似乎弄错了 *.dll。我使用该解决方案创建了一个 GitHub 存储库。我包含了一个构建和编译的 *.dll,可以通过单击this file 上的“查看原始文件”来下载。
将此 *.dll 复制到您选择的可视化工具目录。我用C:\Users[CurrentUser]\Documents\Visual Studio 2013\Visualizers
【讨论】:
【参考方案4】:(免责声明:我是相关可视化工具的作者。)
我写了debugging visualizer for Visual Studio:
【讨论】:
嗨,我正在尝试在 VS 2019 中使用扩展,但出现以下错误:Could not load file or assembly 'System.Runtime, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
。知道可能是什么吗?谢谢
@EnderLook 我们可以在GitHub issue 中继续这个吗?您使用的是哪个版本的扩展程序?如果您没有使用最新版本,请先尝试。另外,您的项目的目标是什么运行时?此外,如果您可以获得表达式的字符串表示形式——使用ExpressionTreeToString——那也会很有帮助。此外,您可能需要解锁 ZIP 文件,甚至个别文件。
完成github.com/zspitz/ExpressionTreeVisualizer/issues/103。我没有附加我的表达式的字符串表示,因为我遇到了所有表达式的问题。不明白你的意思是取消阻止 ZIP 文件,你的意思是解压缩?。谢谢
RE 解锁,见here。以上是关于是否有适用于 VS 2012 的表达式树可视化工具?的主要内容,如果未能解决你的问题,请参考以下文章
适用于 Visual Studio 2012 的 FxCop 12.0
Visual Studio 安装检测内存工具-Visual Leak Detetctor。(适用于VS2013VS2015VS2017VS2019VS2022版本)