2009-04-16 18 views
25

से फ़ील्ड छुपाएं क्या डीबगर घड़ी विंडो में फ़ील्ड और/या गुणों को दिखाना संभव है? देखें, हमारे यहां 50 से अधिक निजी क्षेत्रों के साथ एक कक्षा है, जिनमें से अधिकांश सार्वजनिक संपत्तियों के माध्यम से सामने आती हैं। इसका मतलब है कि हम घड़ी विंडो सूची में बड़ी संख्या में डेटा का डुप्लिकेशंस देख रहे हैं।डीबगर

क्या इसे नियंत्रित करने का कोई साधन है? विशेषता रखकर

[DebuggerBrowsable(DebuggerBrowsableState.Never)] 

अपने समर्थन क्षेत्रों को छिपाने के लिए यह प्रयोग करें:

+1

मैंने सोचा था कि आप कोशिश करने जा रहे थे और ईस्टर अंडे बना रहे थे और नहीं चाहते थे कि आपके सहकर्मियों को आपके चर, फ़ील्ड और ऑब्जेक्ट्स देखना पड़े। – Kredns

+1

नहीं। यह एक बहुत बड़ा मॉडल ऑब्जेक्ट है, और इतने सारे डुप्लिकेट मानों के माध्यम से स्क्रॉल करना समय की बर्बादी हो सकती है। गहराई के लिए – Amy

उत्तर

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

-1

आप स्थानीय लोगों के बजाय ऑटो का उपयोग करें या घड़ियों का उपयोग करें और केवल ब्याज की चर देख सकता ...

6

बाहर चेक DebuggerBrowsableAttribute:

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

आपको लगता है कि एक DebuggerTypeProxy का उपयोग कर सकता है:

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

वास्तव में, इस अनुच्छेद इस क्षेत्र के लिए कुछ बहुत ही उपयोगी सुझाव है अधिक मायने रखता है। यह आपको प्रकार के "कस्टम व्यू" प्रदान करने की अनुमति देता है।

+0

+1। – el2iot2

1

डीबगर ब्रोसेबलएट्रिब्यूट इस अन्य SO question में शामिल है। यदि आप सी # भारी कर रहे हैं तो इसे पढ़ने के लिए एक अच्छा सवाल है।

1

मैं जानता हूँ कि इस पुरानी है, लेकिन आप बहुत DebuggerTypeProxy http://msdn.microsoft.com/en-us/library/d8eyd8zc.aspx

इस तरह से तुम बदसूरत गुण और अतिरिक्त लाभ के साथ अपने वर्ग को संशोधित करने की जरूरत नहीं है कि आप हमेशा देख सकते है का उपयोग कर के साथ बंद बेहतर होगा वास्तविक प्रकार यदि आप वास्तव में उन "छिपा" फ़ील्ड में से एक को देखने की ज़रूरत है।