隐藏调试器中的字段

Amy*_*Amy 34 c# debugging

是否可以隐藏字段和/或属性以显示在调试器监视窗口中?看,我们这里有一个有50多个私人领域的课程,其中大部分是通过公共场所公开的.这意味着我们在观察窗口列表中看到了大量数据的重复.

有没有办法控制这个?

And*_*are 61

试试这个属性:

 [DebuggerBrowsable(DebuggerBrowsableState.Never)]
Run Code Online (Sandbox Code Playgroud)

使用它来隐藏您的支持字段,方法是将属性放在字段声明上方,如下所示:

class Foo
{
    [DebuggerBrowsable(DebuggerBrowsableState.Never)]
    int bar;  // this one will be hidden
    int baz;  // but this one will be visible like normal
}
Run Code Online (Sandbox Code Playgroud)

请记住,DebuggerBrowsableState枚举有两个其他成员:

Collapsed:折叠调试器中的元素.
RootHidden:这显示了集合的子元素,但隐藏了根元素本身.


Mar*_*eck 6

查看DebuggerBrowsableAttribute:

http://msdn.microsoft.com/en-us/library/system.diagnostics.debuggerbrowsableattribute.aspx

实际上,本文对此领域有一些非常有用的提示:

http://msdn.microsoft.com/en-us/magazine/cc163974.aspx

您可能会发现使用DebuggerTypeProxy更有意义.这允许您提供该类型的"自定义视图".