Here is a very basic example:
<Project DefaultTargets="Full" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
It’s a simple cycle through a collection and showing a message. If you think the output is
then you would be wrong. It is in fact:
MSBuild uses the % character to show the beginning of an escaped character. You can get more details here. In this example, you would need to use <Ingredients Include="100%25Bad"/> to display the result you were expecting.