SuppressMessage для всего пространства имен

Я использую подчеркивания для моих методов тестирования для лучшей читаемости, и я хочу подавить ошибки/предупреждения FxCop для всего тестового пространства имен.

Как я мог этого добиться?

Я играл с GlobalSuppressions.cs, но ничего не получилось:

[module: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1707:IdentifiersShouldNotContainUnderscores", Scope = "namespace", Target = "Company.Product.Tests)]
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1707:IdentifiersShouldNotContainUnderscores", Scope = "namespace", Target = "Company.Product.Tests)]

3 ответов


Я думаю, что это невозможно, как уже сказал harlam357.


Да, это невозможно с FxCop

Что вы можете сделать, это отключить CA1707, используя файл пользовательских правил (возможно, только для ваших тестовых проектов).


как уже было сказано, это невозможно из коробки. Имхо, это предназначено, потому что подавление должно быть сделано единично.

существует обходной путь, чтобы сделать это вручную через FXCop 10 с Copy As > Module-level SuppressMessage функциональность.

минусы, вам придется повторять это каждый раз, когда пространство имен изменяется, но как уже сказал, глобального подавления должны быть изолированы.

  1. откройте сборку в FXCop 10 (

Примечание: это можно сделать на уровне сборки, пространства имен или типа.

Module-level SuppressMessage