2009-08-24 13 views
10

क्या विकल्प है कि #if, #endif को अक्षम करने के लिए कोई विकल्प है और अन्य निर्देशों को विजुअल स्टूडियो में संपादन -> उन्नत -> स्वरूप दस्तावेज़ के बाद शामिल नहीं किया गया है?सी # सशर्त निर्देशों के इंडेंटेशन को कैसे बल दें?

धन्यवाद!

उत्तर

6

StyleCop पर देखें।

स्टाइलकॉप शैली और स्थिरता नियमों के एक सेट को लागू करने के लिए सी # स्रोत कोड का विश्लेषण करता है। इसे विजुअल स्टूडियो के अंदर से चलाया जा सकता है या एमएसबिल्ड परियोजना में एकीकृत किया जा सकता है। स्टाइलकॉप को कई तृतीय पक्ष विकास उपकरणों में भी एकीकृत किया गया है।

तुम भी कस्टम नियम जोड़ सकते हैं: Creating Custom Rules for Microsoft Source Analyzer

आशा है कि यह मदद करता है।

+0

धन्यवाद! मेरे पास समय नहीं था कस्टम नियम बनाने की कोशिश करने के लिए, लेकिन ऐसा लगता है कि यह संभव होगा। –

2

मुझे डर है कि विजुअल स्टूडियो में कोई सीधी सेटिंग नहीं है। यदि आपको यह पता चलता है, वैसे भी, मुझे बताएं :)
वैकल्पिक रूप से, आप अपने कोड को प्रारूपित करने के लिए बाहरी टूल का उपयोग करने का प्रयास कर सकते हैं (उदा। AStyle)। आप वीएस में एक मैक्रो बना सकते हैं जो वर्तमान फ़ाइल को बंद कर देता है, फ़ाइल पर बाहरी उपकरण चलाता है और इसे फिर से खोलता है (और शायद कर्सर को पिछली स्थिति में फिर से स्थानांतरित करता है), ताकि आप अपने कोड को विजुअल से प्रारूपित कर सकें स्टूडियो।

अगर काम के लायक प्रयास, वैसे भी है मुझे यकीन है कि नहीं कर रहा हूँ ...

अन्यथा, आप वर्तमान फ़ाइल में पूर्वप्रक्रमक निर्देशों इंडेंट करने के लिए के बाद यह द्वारा प्रारूपित हो गया है अपने स्वयं के मैक्रो लिख सकते हैं वीएस, बाहरी उपकरणों का उपयोग किए बिना भी (जो वीएस में बिल्कुल वही प्रारूपण प्राप्त करने के लिए कॉन्फ़िगर करने के लिए शायद दर्दनाक होगा)।

+0

जानकारी के लिए धन्यवाद। असल में, मैं सिर्फ उत्सुक था। मैं इस मामले में समय निवेश करने की योजना नहीं बना रहा क्योंकि यह सिर्फ छोटी समस्या है और क्योंकि विजुअल स्टूडियो का व्यवहार भविष्य के संस्करणों में बदल सकता है - जो मेरे किसी भी प्रयास को बेकार कर देगा :-( –

2

आप कहीं भी एक स्थिर सहायक वर्ग में इसे छुपा सकते हैं।

internal class Helper 
{ 
    internal static bool IsDebugBuild 
    { 
     get 
     { 
#if DEBUG 
      return true; 
#endif 
      return false; 
     } 
    } 
} 

तो फिर तुम बस इसे नीचे के रूप में उपयोग कर सकते हैं:

if (Helper.IsDebugBuild) 
{ 
    ... 
} 
संबंधित मुद्दे