Я пытаюсь подавить SA1401 (имена полей должны быть частное) предупреждение, используя следующий код:C#: SA1401 предупреждение StyleCop не могут быть удалены
[SuppressMessage("Microsoft.StyleCop.CSharp.NamingRules", "SA1306:FieldNamesMustBeginWithLowerCaseLetter", Justification = "Some field names should be capital letters")]
[SuppressMessage("Microsoft.StyleCop.CSharp.Maintainability", "SA1401:FieldsMustBePrivate", Justification = "Some fields must be public")]
[EventSource(Guid = "9E1C02F1-9B14-4906-AA88-ED2140A102B7")]
public class ProcessApiEventSource : EventSource
{
/// <summary>
/// Event source logger instance
/// </summary>
public static ProcessApiEventSource Log = new ProcessApiEventSource();
...
}
Хотя предупреждение SA1306 подавляются, SA1401 предупреждения не являются подавляется. Может ли кто-нибудь предположить, почему подавление не работает? Кроме того, есть ли способ изменить декларацию с помощью аксессуаров, чтобы код придерживался этого правила и не знает этого предупреждения?