24

स्पष्ट रूप से वीएस 2008 एक ऑटो-प्रॉपर्टी के सेटटर पर ब्रेकपॉइंट सेट करने की अनुमति नहीं देता है।ऑटो-प्रॉपर्टी सेटर पर ब्रेकपॉइंट्स सेट नहीं कर सकता है? क्यूं कर?

आईई। अगर मैं इस तरह एक स्वत: संपत्ति को परिभाषित:

public int CurrentFramesize 
    { 
     get; 
     protected set; 
    } 

और फिर सेटर लाइन पर एक ब्रेकपाइंट सेट करने का प्रयास, पूरे ऑटो संपत्ति ब्रेकप्वाइंट-लाल हो जाता है।

यह सामान्य गुणों के लिए ठीक काम करता है, इसलिए कोई विचार क्यों ऑटो-गुणों को यह विशेष (प्रतिबंधित) उपचार मिलता है? क्या वे छिपे हुए बैकिंग फ़ील्ड के साथ सामान्य गुणों के लिए सिंटैक्टिक चीनी से अधिक हैं?

+0

आप सही कर रहे हैं में किया जाता है। मैंने भी ठीक यही चीज गौर की। –

+4

माइक्रोसॉफ्ट की प्रतिक्रिया http://connect.microsoft.com/VisualStudio/feedback/details/408762/unable-to-set-breakpoint-to-c-automatic-property –

+1

मैं उम्मीद कर रहा था कि यह सुविधा VS2010 में बनायेगी :( – bitbonk

उत्तर

28

विजुअल स्टूडियो 2008, 2010, 2012 का उपयोग करना: ClassName.get_CurrentFramesize()

:

  1. ब्रेकप्वाइंट खिड़की
  2. New-> समारोह में तोड़ ...
  3. प्राप्त के लिए, प्रकार पर जाएं सेट के लिए, टाइप करें: ClassName.set_CurrentFramesize(int)

ब्रेकपॉइंट हिट होने पर आपको "कोई स्रोत उपलब्ध नहीं" मिलेगा, लेकिन आपको कॉल स्टैक में कॉलिंग स्थान मिलेगा।

मैं यहाँ इस समाधान पाया: http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/b1dd0dc3-e9c1-402a-9c79-a5abf7f7286a

यह भी देखें: Debugging automatic properties

+3

किसी भी तरह से मैंने साढ़े सालों से आपका जवाब याद किया। +1 और स्वीकार किया गया! :) –

-2

नहीं, आप उन पर ब्रेक पॉइंट सेट नहीं कर सकते हैं, लेकिन फिर आप क्या जांचेंगे? ऑटो-प्रॉपर्टी के भंडारण के लिए चर केवल रनटाइम पर असाइन किया जाता है और इस तरह डीबगर को शो/एक्सेस करने के लिए कोई चर नहीं होता है।

+11

हो सकता है कि आप * कब * यह असाइन किया जाए, अगर इसे "कहीं" से गलत मान मिलता है। –

+0

@ हंस केस्टिंग: स्पॉट ऑन। सीएलआर डीबगर में नहीं है * डेटा * ब्रेकपॉइंट्स, इसलिए यदि यह समर्थित होगा, तो यह अगली सबसे अच्छी बात होगी। –

2

संक्षिप्त उत्तर यह है: यह बग सुविधा VS2008 के लिए काटने वाले कमरे के तल पर समाप्त हुई।

(लंबे समय तक answer - टोपी टिप @jdk)

हम सभी मिल गया है एक अस्पष्ट वादा है कि यह vNext के लिए विचार किया जा रहा है है।

संबंधित मुद्दे