Проблема создания скрипта MSBUILD

У меня проблемы с <target> тег в моем проекте WPF.

То, что я пытаюсь сделать, это реализовать событие после сборки в автоматизированной сборке команды, которую я настроил в TFS 2010, которая запускает часть интегрированного программного обеспечения для измерения метрик кода под названием NDepend. Сайт NDepend дает некоторые примеры кода того, что мне нужно сделать, я считаю. Эти фрагменты кода показаны ниже:

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Target Name="NDepend"  >
    <PropertyGroup>
      <NDPath>c:\tools\NDepend\NDepend.console.exe</NDPath>
      <NDProject>$(SolutionDir)MyProject.ndproj</NDProject>
      <NDOut>$(TargetDir)NDepend</NDOut>
      <NDIn>$(TargetDir)</NDIn>
    </PropertyGroup>
    <Exec
      Command='"$(NDPath)" "$(NDProject)" /OutDir "$(NDOut)" /InDirs "$(NDIn)"'/>
  </Target>
</Project>

а также

<Target Name="AfterCompile" >
    <BuildStep         TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
        BuildUri="$(BuildUri)"
        Message="Running NDepend analysis">
        <Output TaskParameter="Id" PropertyName="StepId" />
    </BuildStep>
    <PropertyGroup>
        <NDPath>c:\tools\NDepend\NDepend.console.exe</NDPath>
        <NDProject>$(SolutionRoot)\Main\src\MyProject.ndproj</NDProject>
        <NDOut>$(BinariesRoot)\NDepend</NDOut>
        <NDIn>$(BinariesRoot)\Release</NDIn>
    </PropertyGroup>
    <Exec 
      Command='$(NDPath) "$(NDProject)" /OutDir "$(NDOut)" /InDirs "$(NDIn)"'/>
    <BuildStep
        TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
        BuildUri="$(BuildUri)"
        Id="$(StepId)"
        Status="Succeeded" />
    <OnError ExecuteTargets="MarkBuildStepAsFailed" />
</Target>

<Target Name="MarkBuildStepAsFailed">
    <BuildStep
        TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
        BuildUri="$(BuildUri)"
        Id="$(StepId)"
        Status="Failed" />
</Target>

Однако я сталкиваюсь с неприятностями, когда пытаюсь найти, куда поместить этот код. Сайт может рассказывать мне все, что мне нужно знать, и я просто пропускаю это или что-то еще, я не знаю. Но везде, где я пытаюсь ввести <target> теги, VS просто действует так, как будто он не распознает это. На самом деле, когда я пытаюсь ввести почти все теги в приведенных выше фрагментах, VS, похоже, не распознает это.

Я просто пропускаю (некоторые) ссылки на сборки где-то?

Я уже писал некоторые XAML, но я никогда не видел "цель" как тег, я всегда видел его в форме свойства. Поэтому, когда я впервые увидел этот код на их сайте, он выглядел немного странным для меня, но я просто подумал, что это потому, что у меня не было тонны воздействия XAML.

РЕДАКТИРОВАТЬ: вышеприведенный абзац является ошибочным - как видно из комментариев, вышеупомянутый код XML, а не XAML

На сайте написано, что приведенные фрагменты кода предназначены для VS2008, что, как я понимаю, имеет значение. Однако я не осознавал, что это большая разница.

Так может ли быть разница с 2008 по 2010 год? В каком случае, чем отличается код от 2008 года, приведенный выше, и каким он должен быть в 2010 году?

1 ответ

Решение

Это не WPF или XAML, это просто старый XML.

Это скрипт MSBuild, который обычно находится в файле.proj, а не в файле.xaml.

Другие вопросы по тегам