2013-08-16 5 views
8

मेरे कुछ # विकास टीम में, हम अपने कोडिंग मानकों को एकीकृत कोड स्वरूपण के लिए ऑटो-स्वरूपण नियमों को साझा करना चाहते हैं, हम स्वत: स्वरूपण नियमों को साझा करना चाहते हैं। मैं वास्तव में रीशर्पर का परीक्षण कर रहा हूं और यह बहुत अच्छा है लेकिन हमारे पास हमारे मानकों में एक नियम है जिसे मैं चारों ओर नहीं लग रहा हूं।कोड

हम कुछ HTML प्रस्तुत करने के लिए HTMLTextWriter का उपयोग करते हैं, लेकिन हमारे पास यह दिखाने के लिए कॉल करने का नियम है कि वे मार्कअप कैसे आउटपुट किए जाएंगे।

उदाहरण के लिए:

protected override void RenderBody(HtmlTextWriter writer) 
{ 
    writer.AddAttribute("class", "mystyle"); 
    writer.RenderBeginTag("div"); 
     writer.AddAttribute("class", "mystyle2"); 
     writer.RenderBeginTag("div"); 
      writer.Write("HELLO WORLD"); 
     writer.RenderEndTag(); 
    writer.RenderEndTag(); 
} 

अभी के लिए, जब मैं ReSharper (या वी.एस.) का उपयोग कर कोड को पुनः फ़ॉर्मेट, identation निकाल दिया जाता है।

क्या .RenderBeginTag फ़ंक्शन कॉल के आसपास सुधार को रोकने/अक्षम करने के लिए कस्टम नियम जोड़ने का कोई तरीका है? या क्या कोई और उपकरण है (रीशेपर के अलावा या रीशेपर के अतिरिक्त) जो ऐसा कर सकता है?

+0

इस प्रश्न को जांचें: http://stackoverflow.com/questions/3214894/is-there-a-resharper-comment-directive-to-disable-code-cleanup-for-a-class – rpeshkov

उत्तर

10

कोड और आईएमओ का एक हिस्सा साफ करने के लिए आर # को बताने का कोई तरीका नहीं है, आप आर #-विशिष्ट मार्कअप के साथ अपने कोड को प्रदूषित नहीं करना चाहते हैं। आपके फ़ंक्शन कॉल को ब्रैकेट में इंडेंट करने के लिए एक वर्कअराउंड होगा:

private void RenderBody(HtmlTextWriter writer) 
{ 
    writer.AddAttribute("class", "mystyle"); 
    writer.RenderBeginTag("div"); 
    { 
     writer.AddAttribute("class", "mystyle2"); 
     writer.RenderBeginTag("div"); 
     { 
      writer.Write("HELLO WORLD"); 
     } 
     writer.RenderEndTag(); 
    } 
    writer.RenderEndTag(); 
} 

R # इन ब्लॉकों को दोबारा सुधार नहीं करेगा।