Как временно отключить анализ кода локально? - PullRequest
2 голосов
/ 26 марта 2010

Здесь мы запускаем набор правил CA Visual Studio 2008 как локально, так и на сервере сборки. Для регистрации наши правила CA должны соответствовать политике серверов. Тем не менее, я работаю над большим решением с несколькими проектами. Сборка проекта в режиме выпуска занимает много времени с включенными правилами CA, но это необходимо при создании или редактировании юнит-тестов. Это делает работу с юнит-тестами болезненной задачей. Я хотел бы иметь быстрый способ (быстрее, чем прохождение всех проектов по отключению CA) отключить правила CA во время разработки, а затем повторно включить их перед регистрацией.

Ответы [ 2 ]

4 голосов
/ 26 марта 2010

Для этого я обычно создаю конфигурацию сборки «Debug No FxCop» на уровне решения, единственное различие между конфигурациями внутри проекта заключается в свойстве RunCodeAnalysis, о котором Грэм уже упоминал. Использование конфигурации сборки для этого позволит вам избежать перезагрузки вашего решения, когда вы хотите переключаться между режимами CA и не CA.

3 голосов
/ 26 марта 2010

Файл проекта (* .csproj для C #) содержит элемент, который контролирует, будет ли выполняться анализ кода - <RunCodeAnalysis>true</RunCodeAnalysis>. (Это можно увидеть, открыв файл проекта в текстовом редакторе или выгрузив проект в Visual Studio и выбрав «Редактировать».)

Вы можете написать скрипт (например, используя PowerShell), который будет перебирать все файлы проекта, выбирать вышеуказанный элемент с помощью XPath и переключать его значение (то есть с true на false и наоборот). ).

Этот вопрос может быть полезен.

...