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!
Asked
Active
Viewed 1.1k times
23
-
Can you post a segment of you MSBULD File please. I don't have it in ours anymore. – Preet Sangha Apr 22 '10 at 04:29
1 Answers
46
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="<Namespace Prefix='msb' Uri='http://schemas.microsoft.com/developer/msbuild/2003'/>"
XmlInputPath="$(MSBuildProjectFile)"
Query="/msb:Project/msb:Target[@Name='TestXmlPeek']/msb:Message">
<Output TaskParameter="Result" ItemName="Peeked" />
</XmlPeek>
<Message Text="@(Peeked)"/>
</Target>
</Project>

Julien Hoarau
- 48,964
- 20
- 128
- 117
-
2Thanks madgnome! It works now after I put ToolVersion=4.0 in the Project tag. The weird thing is that I'm running MSBuild Engine version 4.0.30319.1 as default but this "higher" version doesn't support XmlPeek! – Nam G VU Apr 27 '10 at 08:30