Для этого вы можете использовать задачу XmlPoke.Хотя кажется немного странным изменять проекты таким образом.В качестве альтернативы, вы можете настроить крошечный файл импорта,
<!-- in your main project file, right below the PropertyGroup -->
<Import
Condition="Exists('Custom.props')"
Project="Custom.props"
/>
Затем динамически создать этот файл свойств, как,
<?xml version="1.0" encoding="utf-8"?>
<Project
xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
ToolsVersion="4.0">
<PropertyGroup>
<CustomValue>True</CustomValue>
</PropertyGroup>
</Project>
Вы можете использовать XmlPoke только для этого файла .props,или используйте WriteLinesToFile для создания всего файла.Этот вторичный файл не нужно проверять в системе контроля версий, условие импорта делает проект работоспособным, когда файл не существует.
Задача XmlPoke будет выглядеть так:
<XmlPoke
XmlInputPath="./Custom.props"
Namespaces="<Namespace Prefix='x'
Uri='http://schemas.microsoft.com/developer/msbuild/2003'/>"
Query="//x:PropertyGroup/x:CustomValue/@Value"
Value="True"
/>