2009-09-04 12 views
23

क्या जावा के @SuppressWarnings एनोटेशन के समान सी # में चेतावनियों को दबाने का कोई तरीका है?जावा के @SuppressWarnings एनोटेशन के समान सी # में चेतावनियों को दबाने का कोई तरीका है?

विफल रहा है, क्या विजुअल स्टूडियो में चेतावनियों को दबाने का कोई और तरीका है?

उत्तर

41

हाँ:

कोड से, विशिष्ट चेतावनी निष्क्रिय करने के लिए, आप #pragma निर्देश उपयोग कर सकते हैं।

अक्षम करने के लिए, का उपयोग करें:

#pragma warning disable 0169, 0414, anyothernumber 

कहाँ संख्या चेतावनी है कि आप संकलक उत्पादन से पढ़ सकते हैं के पहचानकर्ता हैं।

कोड के किसी विशेष भाग के बाद चेतावनी को पुन: सक्षम करने के लिए (जो एक अच्छा विचार है) का उपयोग करें:

#pragma warning restore 0169, anythingelse 

इस तरह आप संकलक उत्पादन साफ ​​कर सकते हैं, और अपने आप क्योंकि चेतावनी होगा सुरक्षित रखने केवल कोड के उस विशेष भाग () के लिए दबाया जाए जहां आपने सुनिश्चित किया था कि आपको उन्हें देखने की आवश्यकता नहीं है)।

+0

मुझे यकीन नहीं है कि संख्याओं का सही अर्थ यहां व्याख्या किया गया है या नहीं। अग्रणी शून्य सामान्य रूप से 'ऑक्टल' के रूप में पार्स किया जाता है। तो इसे छोड़ना सुरक्षित हो सकता है। (हालांकि कोशिश नहीं की गई) – fmuecke

+1

@fmuecke किसी भी तरह से काम करने लगता है (कम से कम मोनो कंपाइलर में।) आप क्या कहते हैं सी # पार्सर में अक्षर के लिए सच है, लेकिन मुझे लगता है कि प्रीप्रोसेसर पार्स संख्याओं को अलग-अलग करता है। – Eliot

+0

@ TamásSzelei यह केवल स्थानीय रूप से सोनारलिंट के लिए काम करता है। मैं अभी भी सोनारक्यूब सर्वर परिणामों में रिपोर्ट की गई त्रुटियों को देख रहा हूं। – ConfusedDeer

5

वहाँ है। संकलक चेतावनियों को दबाने के तरीके पर MSDN पृष्ठ देखें।

विजुअल स्टूडियो से, अपने प्रोजेक्ट गुणों पर जाएं, बिल्ड टैब का चयन करें, और दबाएं चेतावनी फ़ील्ड में चेतावनी संख्या दर्ज करें।

public class MyClass 
{ 
    #pragma warning disable 0168 
    // code 

    // optionally, restore warnings again 
    #pragma warning restore 0168 
    // more code 
} 
14

हाँ वहाँ आप इस तरह pragma चेतावनी एनोटेशन का उपयोग कर सकते है:

#pragma warning disable 414 
//some code that generates a warning 
#pragma warning restore 414 

को छोड़ते हुए नंबर से अक्षम और सभी चेतावनी कोड पुनर्स्थापित करता है ...

0

मुझे लगता है कि आप भी इस परियोजना की समीक्षा करने के की कोशिश कर सकते या समाधान गुण और अपने चेतावनी स्तर को निचले स्तर पर या तो सेट करें। अन्यथा, अन्य प्रतिक्रिया शायद बेहतर हैं।

2

मैं अत्यधिक निम्न प्रपत्र

#pragma warning disable 649 // Field 'field' is never assigned to, and will always have its default value 'value' 

#pragma warning restore 649 

पहली पंक्ति पर टिप्पणी उपयोग करने की अनुशंसा Compiler Warning (level 4) CS0649 के लिए MSDN दस्तावेज की तरह पहले से लिया जाता है । चूंकि चेतावनियां सी # में गिने गए हैं, इसलिए यह चेतावनी अक्षम होने पर कोड में वास्तव में क्या चल रहा है इसका आपका एकमात्र संदर्भ है। जब आप प्राग्मा चेतावनी के लिए अपने पूरे समाधान में खोज करते हैं तो खोज परिणाम विंडो में दिखने का कारण प्राप्त करने का एकमात्र तरीका यह है कि लाइन के अंत में इसे रखने का एकमात्र तरीका है।

आप अपनी परियोजना के निर्माण के बाद आउटपुट विंडो देखकर चेतावनी संख्याओं की पहचान कर सकते हैं।सुनिश्चित करें कि यह से आउटपुट दिखाएं: बनाएं।

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