आप इसे प्राप्त करने के क्रमबद्ध कर सकते हैं, लेकिन यह एक हैक की तरह है। आप क्या कर सकते हैं, रीसर्पर के External Annotations का उपयोग करके ConditionalAttribute के साथ अपने लॉगिंग विधियों को सजाने के लिए है।
एनोटेशन लगभग हर जगह ReSharper में उपयोग किया जाता है, यह है कि यह कैसे रिलीज में Debug.WriteLine
लाइन बाहर ग्रे, उदाहरण के लिए जानता है के बाद से Debug.Write...
लाइनों [Conditional("DEBUG")]
विशेषता के साथ सजाया जाता है,।
क्या आप है ReSharper बनाकर धोखा कर सकता है कि इस तरह के एक सशर्त विधि अपने लकड़हारा के तरीकों पर मौजूद है लगता है। आप इसे एक्सएमएल के माध्यम से बाहरी रूप से इस विशेषता को लागू करके कर सकते हैं।
मैं my blog में कुछ इस तरह कर रही है के बारे में लिखा है, यहाँ तुम ऐसा कैसे कर सकता है है:
- एक फ़ाइल YourLogger.ExternalAnnotations.xml बनाएं जिसका नाम है, उदा NLog.ExternalAnnotations.xml और इसे अपने लॉगर असेंबली के बगल में रखें।
- निम्नलिखित जोड़ें:
<assembly name="NLog">
<member name="M:NLog.Logger.Info(System.String)">
<attribute ctor="M:System.Diagnostics.ConditionalAttribute.#ctor(System.String)">
<argument>LOG</argument>
</attribute>
</member>
<member name="M:NLog.Logger.Debug(System.String)">
<attribute ctor="M:System.Diagnostics.ConditionalAttribute.#ctor(System.String)">
<argument>LOG</argument>
</attribute>
</member>
</assembly>
प्रत्येक विधि आप "बाहर ग्रे" करना चाहते हैं के लिए, आप विधि की एक्सएमएल-दस्तावेज आईडी नाम के साथ एक <member>
ब्लॉक जोड़ने की आवश्यकता होगी। ReSharper 8 EAP में एक विकल्प है रीस्पर के के तहत स्थित क्लिपबोर्ड पर एक्सएमएल-डॉक आईडी कॉपी करें मेनू संपादित करें।
यह अनिवार्य रूप से ReSharper के इंजन को लगता है कि [Conditional("LOG")]
लॉगर के प्रकार मेटाडेटा में परिभाषित किया गया है।
सभी वांछित विधियों को जोड़ने के बाद, बस समाधान को पुनः लोड करें। आपको जो चाहिए वह मिलना चाहिए (तरह ...जैसे मैंने कहा, यह एक हैक है :))
स्रोत
2013-06-08 23:30:56
यह एक दिलचस्प विचार है। आप इसे अपने मुद्दे ट्रैकर पर सुझाव दे सकते हैं: http://youtrack.jetbrains.com/issues/RSRP –
यह यहां सुझाया गया है: https://youtrack.jetbrains.com/issue/RSRP-437773 –