Отключить анализ кода s для некоторых проектов, использующих MSBuild

Я унаследовал файл решения, который использует сценарий MSBuild для компиляции нескольких решений. Большинство проектов сконфигурировано с анализом и наборами правил, а у меня есть несколько проектов модульного тестирования, которые этого не делают.

Проекты с включенным анализом:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
  <DebugSymbols>true</DebugSymbols>
  <DebugType>full</DebugType>
  <DefineConstants>CODE_ANALYSIS;DEBUG;TRACE</DefineConstants>
  <Optimize>false</Optimize>
  <OutputPath>bin\Debug</OutputPath>
  <PlatformTarget>x86</PlatformTarget>
  <CodeAnalysisRuleSet>..\OurRules.ruleset</CodeAnalysisRuleSet>
  <RunCodeAnalysis>true</RunCodeAnalysis>
 </PropertyGroup>

Проекты с отключенным анализом:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
  <DebugSymbols>true</DebugSymbols>
  <DebugType>full</DebugType>
  <DefineConstants>DEBUG;TRACE</DefineConstants>
  <Optimize>false</Optimize>
  <OutputPath>bin\Debug</OutputPath>
  <PlatformTarget>x86</PlatformTarget>
  <RunCodeAnalysis>false</RunCodeAnalysis>
 </PropertyGroup>

Когда я запускаю свою сборку скрипт, похоже, что некоторые проекты не соблюдают настройки проекта:

msbuild.exe BuildScript.proj /p:SolutionRoot=%cd%; /p:Configuration=Debug /p:Platform:x86 /p:RunCodeAnalysis=True

Когда я проверяю папку вывода, я вижу XML-результаты анализа покрытия для проектов, у которых для флага RunCodeAnalysis установлено значение false. Может ли кто-нибудь помочь мне понять, что здесь происходит?

12
задан bryanbcook 18 June 2011 в 21:31
поделиться