我在编写表达式时注意到,查看编译后的表达式的最佳方式是使用表达式的DebugView属性。
如果我没记错的话,任何对象都可以接受一个自定义的DebugView --我想知道如何处理这个问题,因为"ToString“的可读性并不像这个那么好。
我怀疑它类似于WPF,在那里你可以在任何IObservableCollection上执行CollectionViewSource,以获得对包装器对象的访问。
也许有人知道如何生成DebugView --有一种不需要实际调试就能呈现这样的表达式的方法可能会相当有用。
发布于 2018-08-10 00:06:46
如果我没记错的话,任何对象都可以受制于自定义的DebugView
是的,你是对的。
你要找的东西被称为调试器可视化工具。通过继承DialogDebuggerVisualizer
,您可以轻松创建自己的应用程序。没有必要为您自己的类型创建可视化工具。您可以为预先存在的.NET类型(如string
)制作一个可视化工具。请参见下面的演练。
对于表达式,您可以执行如下操作:
[assembly:System.Diagnostics.DebuggerVisualizer(
typeof(MyFirstVisualizer.DebuggerSide),
typeof(VisualizerObjectSource),
Target = typeof(System.Linq.Expressions.Expression), // <-- expression
Description = "My First Visualizer")]
MSDN
可视化工具是Visual Studio调试器用户界面的组件。可视化工具创建一个对话框或另一个界面,以便以适合变量或对象的数据类型的方式显示变量或对象。
调试器可视化工具的体系结构由两部分组成:
安装非常简单,只需复制到
VisualStudioInstallPath \Common7\Packages\Debugger\Visualizers
...or even
My Documents\ VisualStudioVersion \Visualizers。
更多
https://stackoverflow.com/questions/51776624
复制相似问题