2010-07-20 3 views
2

Можно создать дубликат:
How to suppress a StyleCop warning?Как подавить предупреждение StyleCop «SA1201: все методы должны быть размещены после всех свойств».?

Я пишу группу методов, которые представляют собой сочетание частные/государственные и нужно поместить в ту же область (с помощью #region). Я использовал метод, упомянутый в here, но я не могу получить это предупреждение подавленным. Пожалуйста помоги.

[Редактировать] Мне нужно устранить это конкретное предупреждение - не для всего проекта/решения. Но я хочу знать, как это сделать^_^

ответ

1

Альтернатива подавлению предупреждений стильного стиля - использовать их лучше. Существует правило, которое будет настаивать на том, что вы не используете регионы (по умолчанию отключен). Не делая этого, ваш вопрос уходит.

Вместо использования регионов используйте частичные классы. Извлеките свой регион в новый частичный класс.

Таким образом, вы получаете соответствие стиля и функциональное разделение кода. Лучшее из обоих миров.

1

В вашем случае, верный признак SuppressMessage хотел бы, как в следующем:

[SuppressMessage("StyleCop.CSharp.OrderingRules", "SA1202:ElementsMustBeOrderedByAccess")] 
private void SomeMethod() 
{ 
} 

Обратите внимание, что вы можете разместить его на любой другой элемент (например, в классе - то все подобные нарушения в целом классе будет быть подавлен).

Я также согласен с тем, что совершенно очевидно, что писать в этих полях.

На самом деле, первый из которых должен быть полное имя StyleCop анализатора класса и может быть найден из исходного кода (например, от here). Второй должен начинаться с код правила, затем двоеточие и имя перечисления правила (к счастью, оно всегда выглядит как имя правила, отображаемое в редакторе параметров, но без пробелов).