У нас есть существующий продукт, в котором мы хотели бы реализовать использование StyleCop. Однако у нас есть одна проблема: все наши пространства имен начинаются с нижнего регистра (например, lowerCase.UpperCase.Etc.Etc.
) и, конечно, приводит к тому, что правило SA1300 (элемент должен начинаться с буквы верхнего регистра) нарушается в каждом файле.
Хотя на данный момент невозможно изменить пространства имен, потому что они уже существуют, и у нас есть много партнеров и клиентов, которые уже реализуют интерфейсы для нашего API и зависят от стабильного пространства имен. Я уверен, что вы понимаете последствия изменения ...
Нам нравится, когда правило включено в целом, но временно отключено в строке пространства имен. Пробовали с:
[module: System.Diagnostics.CodeAnalysis.SuppressMessage("StyleCop.CSharp.NamingRules", "SA1300:ElementMustBeginWithUpperCaseLetter", Justification = "Reviewed. Suppression is OK here.")]
И он работает, если я помещаю его над строкой пространства имен, однако он в основном полностью отключит правило, что не то, что мы хотим, потому что нам нравится правило для классов и членов классов ...
Я бы хотел иметь что-нибудь вроде:
#pragma warning disable SA1300
namespace lowerCase.UpperCase.Etc
{
#pragma warning enable SA1300
Но SA1300, насколько я понимаю, не является таким предупреждением.
У кого-нибудь есть идеи, как решить эту проблему?
Заранее спасибо!