Игнорируйте встроенные правила FxCop для некоторых конкретных случаев.Пользовательские правила FxCop? - PullRequest
0 голосов
/ 15 марта 2012

Я разрабатываю некоторый асинхронный код, используя Web Api, и получаю много ошибок FxCop, которые я хотел бы подавить.Например, следующий код в моем контроллере вызовет эти ошибки:

  1. UsePropertiesWhereApp Соответствующие
  2. MarkMembersAsStatic
  3. DoNotNestGenericTypesInMemberSignatures
public Task<HttpResponseMessage<IEnumerable<Foo>>> GetAsync()
{
}

Я не хочу подавлять эти правила для всей сборки, поэтому кажется, что единственный способ подавить ошибки в коде - это добавить атрибут SuppressMessage для каждого нарушенного правила в каждом методе.Есть ли лучший способ подавить ошибки?Я думаю о пользовательских правилах FxCop ... Можно ли создать правило типа "Игнорировать DoNotNestGenericTypesInMemberSignatures для Task<T>" или "Игнорировать эти правила для любого типа, унаследованного от класса Bar"?

Ответы [ 2 ]

1 голос
/ 15 марта 2012

Нет, нет способа заставить какие-либо из предоставленных Microsoft правил условно игнорировать определенные типы или элементы, подобные этому.У вас есть три основных варианта:

  1. Подавить каждое нарушение индивидуально,
  2. Полностью отключить правила для сборок, содержащих «специальные» типы, или
  3. Отключить Microsoft-предусмотренные правила, но предоставляют альтернативные пользовательские правила, которые могут игнорировать ваши типы.

Лично я бы выбрал # 1, но ymmv ...

0 голосов
/ 15 марта 2012

Я полагаю, что ближайший ответ для этого - Пользовательское правило в FxCop, которое применяется только к методам, вызываемым методом определенного типа ?Надеюсь, это работает для вас, в противном случае я бы сказал, что ответ не

...