2010-01-22 14 views
5

क्या स्टाइलकॉप नियमों को और अधिक वैश्विक रूप से दबाया जा सकता है ... दूसरे शब्दों में केवल स्रोत इन-लाइन विशेषताओं का उपयोग नहीं करना?स्टाइलकॉप दमन

उत्तर

8

आप कुछ स्टाइलकॉप नियमों को सेटिंग्स.StyleCop फ़ाइल से अक्षम कर सकते हैं। उदाहरण के लिए स्टाइलकॉप में निर्मित कुछ चीजें हैं जो हमारे मानक के साथ फिट नहीं होती हैं। मेरी Settings.StyleCop फ़ाइल में उदाहरण के लिए हम है: "। इस"

<Analyzer AnalyzerId="Microsoft.StyleCop.CSharp.ReadabilityRules"> 
    <Rules> 
    <Rule Name="PrefixLocalCallsWithThis"> 
     <RuleSettings> 
     <BooleanProperty Name="Enabled">False</BooleanProperty> 
     </RuleSettings> 
    </Rule> 
    </Rules> 
    <AnalyzerSettings /> 
</Analyzer> 

इस तरह की है कि एक सदस्य चर या संपत्ति पर हमारे पास की जरूरत नहीं है प्रत्येक के लिए।

+0

और मैं नीचे गिर रहा हूं क्यों? – McAden

+0

' गलत 'मैंने कभी देखा है सबसे silliest xml होना चाहिए। –

+0

' True' – McAden

2

बिल्कुल!

स्रोत विशेषताओं का उपयोग केवल परिस्थितियों में ही किया जाना चाहिए, आपके स्टाइलकॉप कॉन्फ़िगरेशन का विशाल बहुमत StyleCopSettingsEditor के माध्यम से किया जाना चाहिए (किसी प्रोजेक्ट पर राइट-क्लिक करें, "स्टाइलकॉप सेटिंग्स" चुनें, जो एक को खोल देगा) ।

यह प्रोजेक्ट निर्देशिका में उस प्रोजेक्ट के लिए सेटिंग्स.StyleCop फ़ाइल बनाएगा। उस फ़ाइल को अन्य उत्तर उल्लेखों के रूप में संपादित किया जा सकता है, लेकिन मैं कभी भी एक संपादक में हैकिंग एक्सएमएल का सुझाव नहीं दूंगा। StyleCopSettingsEditor निश्चित रूप से जाने का तरीका है।

एक बार जब आप अपनी स्टाइलकॉप सेटिंग्स संशोधित कर लेंगे, तो आप नहीं कर पाएंगे!
ये सेटिंग्स केवल उस प्रोजेक्ट पर लागू होंगी, और यह निश्चित रूप से अपर्याप्त हो सकती है।
मैं व्यक्तिगत रूप से आगे बढ़ने का सुझाव देता हूं कि StyleCop.Settings समाधान स्तर पर एक निर्देशिका को फ़ाइल करें और इसे "समाधान आइटम" के रूप में जोड़ दें। फिर उस फ़ाइल को टीएफएस (या जो भी स्रोत नियंत्रण प्रणाली आप उपयोग कर रहे हैं) में जांचें। अब उन स्टाइलकॉप सेटिंग्स पूरे समाधान का हिस्सा हैं, और जब वे "नवीनतम प्राप्त करें" करते हैं तो सभी उन्हें प्राप्त करेंगे। यदि आवश्यक हो, तो आप प्रोजेक्ट सेटिंग्स के साथ समाधान सेटिंग्स को ओवरराइड कर सकते हैं (प्रोजेक्ट लेवल पर स्टाइलकॉप। सेटिंग्स फ़ाइल समाधान स्तर पर एक को ओवरराइड कर देगी)।

आपकी स्टाइलकॉप सेटिंग्स को उससे अधिक वैश्विक बनाने का एकमात्र तरीका या तो उन्हें निर्देशिका पेड़ में भी ऊपर ले जाना है (यदि आप टीएफएस का उपयोग कर रहे हैं तो टीम प्रोजेक्ट स्तर तक, समाधान में GetLatest करने के बाद अविश्वसनीय स्तर उन्हें सभी को वितरित नहीं करेगा), या StyleCop स्थापना निर्देशिका में सेटिंग्स.StyleCop फ़ाइल को ओवरराइट करने के लिए (यहां तक ​​कि अधिक अविश्वसनीय है क्योंकि इसे स्रोत नियंत्रण द्वारा नियंत्रित नहीं किया जा सकता है और इसके बजाय सभी को या किसी को ईमेल किया जाना चाहिए)।

कुल मिलाकर आपकी टीम के लिए विशिष्ट स्टाइलकॉप सेटिंग्स को वैश्विक रूप में बनाने के तरीके निश्चित रूप से हैं, आपके पास बहुत सारे विकल्प हैं।

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