Приложение WPF: Microsoft.Maintainability # CA1506 Подпись недействительна, нарушение FxCop - PullRequest
0 голосов
/ 01 июня 2011

У меня есть решение WPF, и когда я запускаю FxCop на нем (ну, если я строю его с включенным Code Analysis, если быть точным), с набором правил, установленным в Microsoft All Rules (есть несколько других наборов правил который также делает это), он выдает мне следующую ошибку:

CA0001: Rule=Microsoft.Maintainability#CA1506, Target=My.Project.Namespace.App : Signature is not valid.

Похоже, это относится к подклассу Application, который является точкой входа моего приложения. Насколько я могу судить, в сигнатуре класса нет ничего недопустимого. Попытка погуглить ошибку вызвала некоторые другие нарушения CA0001 / CA1506, но ничего относительно «Подпись недействительна». ошибка (CA1506 выглядит как «Избегайте чрезмерной связи классов», хотя я нашел кого-то с моим типом ошибки, но с «Коллекцией был изменен во время перечисления»; ни эта, ни моя ошибка, похоже, не имеют ничего общего с чрезмерной связью).

1 Ответ

0 голосов
/ 01 июня 2011

Согласно документации CA001 эта ошибка вызвана дефектом в пользовательском правиле или неизвестным дефектом в инструменте анализа управляемого кода . Похоже, ошибка сообщает о том, что ядро ​​анализа кода не может загрузить / выполнить правило CA1506 из-за неверной подписи, но поскольку вы используете стандартные наборы правил Microsoft, это кажется странной ошибкой.

Документация MSDN предлагает вам попробовать следующее:

  • Для получения дополнительной диагностической информации просмотрите CodeAnalysisReport.xml в папке \ obj. В отчете перечислены тип исключения, стек, тип, сообщение и стек всех внутренних исключений.
  • Попробуйте переписать строку, в которой сообщается об ошибке, или несколько строк кода, окружающих эту строку.

Если проверка отчета об анализе кода не дает дополнительной информации, вы можете проверить свою среду разработки, чтобы увидеть, есть ли проблема с настройкой анализа кода в Visual Studio. Вы можете даже попытаться сделать ремонт в Visual Studio.

...