Как настроить MSBuild для выполнения некоторых задач только на сборках релиза? - PullRequest
28 голосов
/ 10 февраля 2009

Я только что узнал о том, как включить FxCop в сборку. Но это медленно, и я хочу, чтобы это делалось только на релизных сборках. Есть ли способ настроить это?

Ответы [ 3 ]

52 голосов
/ 10 февраля 2009

Проверьте состояние конфигурации.

<Target Name="AfterBuild" Condition="'$(Configuration)' == 'Release' ">

  <FxCop TargetAssemblies="@(OutputAssemblies)"
       RuleLibraries="@(FxCopRuleAssemblies)" 
       DependencyDirectories="$(MSBuildCommunityTasksPath)"
       FailOnError="False"
       ApplyOutXsl="True"
       OutputXslFileName="C:\Program Files\Microsoft FxCop 1.32\Xml\FxCopReport.xsl"
       DirectOutputToConsole="true"/>
</Target>
4 голосов
/ 10 февраля 2009

Не проверял это, но я думаю, что это должно быть что-то вроде:

<Target Name="MyTarget" Condition="'$(FlavorToBuild)'=='Release'">
   ...do release specific stuff...
</Target>
0 голосов
/ 10 февраля 2009

Добавить условие в скрипт .msbuild. Выполняйте задачу FxCop только в том случае, если в качестве «Конфигурации» выбрано «Release», а не «f.ex» в случае «Debug»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...