2009-04-16 77 views
25

是否可以隱藏字段和/或屬性在調試器監視窗口中顯示?看,我們在這裏有一個有50多個私人領域的課程,其中大部分都是通過公共財產暴露的。這意味着我們在監視窗口列表中看到大量數據的重複。從調試器隱藏字段

有沒有辦法控制它?通過將屬性

[DebuggerBrowsable(DebuggerBrowsableState.Never)] 

用它來隱藏自己的支持字段:

+1

我以爲你會嘗試製作一個復活節彩蛋,並且不希望你的同事看到你的變量,字段和對象。 – Kredns 2009-04-16 01:09:29

+1

Nah。這是一個非常大的模型對象,並且必須滾動這麼多重複值纔可能浪費時間。 – Amy 2009-04-16 13:55:42

回答

53

試試這個屬性上述領域的聲明是這樣的:

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

請記住,DebuggerBrowsableState枚舉有其他兩個成員:

Collapsed:摺疊調試器中的元素。
RootHidden:這顯示了集合的子元素,但隱藏了根元素本身。

+2

+1爲深入,但仍簡潔,答案。我愛這個網站。 – el2iot2 2009-04-16 01:12:33

-1

你可以使用汽車,而不是本地人,或者使用手錶和只能觀看感興趣的變量...

1

DebuggerBrowsableAttribute在這個其他SO question中被覆蓋。如果你正在大量使用C#,那麼閱讀這個問題是一個很好的問題。

1

我知道這是舊的,但你會使用DebuggerTypeProxy http://msdn.microsoft.com/en-us/library/d8eyd8zc.aspx

這樣你不必與醜陋屬性和額外的好處來修改你的類是你可以隨時看看好得多真正的類型,如果你確實需要看看其中一個「隱藏」字段。