2010-10-04 15 views
12

जब मैं .ToString() को Enum पर विजुअल स्टूडियो में टाइप करता हूं, तो इंटेलिसेंस ToString() (हालांकि यह ठीक बनाता है और काम करता है) के माध्यम से "स्ट्राइक-थ्रू" लाइन दिखाता है। ऐसा लगता है कि Enum.ToString() किसी भी तरह से बहिष्कृत है। क्या ये सच है? यदि हां, तो क्यों?Enum.ToString() बहिष्कृत?

alt text

+0

ऐसा इसलिए है क्योंकि ToString() की आवश्यकता नहीं है, क्योंकि वैसे भी – PostMan

+2

कहा जा रहा है, क्या आप वीएस के लिए कोई एक्सटेंशन उपयोग कर रहे हैं जो रंग जोड़ना (जैसे स्ट्राइक आउट)? –

+0

@Reed, मैं ReSharper का उपयोग कर रहा हूं ... पता नहीं है कि यह कर रहा है – JoelFan

उत्तर

27

Enum.ToString भार के कि एक IFormatProvider, ToString(IFormatProvider) और ToString(String, IFormatProvider) ले, दोनों अप्रचलित हैं, क्योंकि IFormatProvider वैसे भी नहीं किया जाता है।

अन्य अधिभार, ToString() और ToString(String), अप्रचलित नहीं हैं।

यह अप्रचलित वर्ग के सदस्यों को हड़ताल करने के लिए रीशेपर की एक विशेषता है। यह जाहिर है कि इसमें बहुत अच्छा नहीं है।

+6

विशेष रूप से, नो-एर्ग अधिभार ('ToString()') जो ओपी उपयोग कर रहा है ** ** ** बहिष्कृत नहीं है। –

+2

खैर, इंटेलिजेंस ओवरलोड लोड करने से पहले "ToString" पर हमला करता है – JoelFan

+0

@ जोएल: "स्ट्राइक आउट" से आपका क्या मतलब है? क्या आपको संकलक त्रुटि या चेतावनी मिलती है? जब आप उस कोड पर माउस करते हैं तो आप क्या देखते हैं? –

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