How to use XmlPeek task?

Nam G VU picture Nam G VU · Apr 22, 2010 · Viewed 10.6k times · Source

I've read in the MSDN MSBuild Task Reference about XmlPeek task at http://msdn.microsoft.com/en-us/library/ff598684(v=VS.100).aspx but I cannot use it in my MSBuild script. If you have used this before, please show me how!

Answer

Julien Hoarau picture Julien Hoarau · Apr 22, 2010

The XmlPeek task is only available in MSBuild for .NET 4. So you need to use MSBuild v4.0 and specify in your msbuild file the tool version you are using.

Here a sample project file, where we are looking for the message node.

  <Target Name="TestXmlPeek">
    <XmlPeek Namespaces="&lt;Namespace Prefix='msb' Uri='http://schemas.microsoft.com/developer/msbuild/2003'/&gt;"
             XmlInputPath="$(MSBuildProjectFile)" 
             Query="/msb:Project/msb:Target[@Name='TestXmlPeek']/msb:Message">
      <Output TaskParameter="Result" ItemName="Peeked" />
    </XmlPeek>

    <Message Text="@(Peeked)"/>
  </Target>
</Project>