के लिए विशिष्ट कोड विश्लेषण चेतावनी को अक्षम कैसे करें मैं पूरी कक्षा में एक कोड विश्लेषण नियम अक्षम करने की कोशिश कर रहा हूं, लेकिन पूरी परियोजना के लिए नहीं, केवल एक वर्ग। नीचे दिए गए उदाहरण में, निर्माण एक CA1822 चेतावनी उत्पन्न करता है क्योंकि ऐसा लगता है कि इकाई परीक्षण विधियां स्थिर होनी चाहिए।संपूर्ण कोड
ठीक प्रत्येक इकाई परीक्षण विधि के लिए निम्न विशेषता जोड़ने के लिए है: [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1822:MarkMembersAsStatic")]
हालांकि, उस बोझिल है और clutters कई इकाई परीक्षण के साथ एक वर्ग।
मैं कोशिश की है:
#pragma warning disable CA1822
#pragma warning restore CA1822
इन दोनों में से न तो में वर्ग
public class TestClass
{
public TestClass()
{
// some setup here
}
[Fact]
public void My_Unit_Test1()
{
// the 'this' parameter is never used, causes CA warning 1822
}
[Fact]
public void My_Unit_Test2()
{
// the 'this' parameter is never used, causes CA warning 1822
}
}
VS2015 अद्यतन 2 का उपयोग करना, 4.61 नेट, और नए कोड विश्लेषण एनालाइजर।
मैं यूनिट टेस्ट परियोजनाओं के लिए एक अलग कोड विश्लेषण नियम-सेट का उपयोग करके यह (और अन्य) मुद्दों को संबोधित किया। मैंने उन नियमों को बंद कर दिया जो यूनिट टेस्ट परियोजनाओं पर लागू नहीं हुए थे। –
@ मैथ्यू वाटसन - मैं परीक्षण परियोजनाओं के लिए एक अलग नियम का भी उपयोग करता हूं। इस मामले में, मैं चाहता हूं कि नियम मेरी इकाई परीक्षण परियोजना पर लागू हो, केवल एक विशिष्ट वर्ग नहीं। – SFun28
दुर्भाग्यवश आप यह नहीं कर सकते - दमन हमेशा उस स्तर पर लागू होना चाहिए जिस पर चेतावनी/त्रुटि की सूचना दी गई है, इसलिए यदि यह एक विधि है, तो आप केवल उस विधि के लिए चेतावनी को दबा सकते हैं। –