Я получил следующий тестовый код:
<Target Name="TestTarget">
<MSBuild.ExtensionPack.Xml.XmlFile
TaskAction="UpdateElement"
File="@(ConfigurationFile)"
XPath="/MyConfiguration/Settings/RetentionTime"
InnerText="$(RetentionTime)"/>
</Target>
(ConfigurationFile находится внутри ItemGroup, где-то еще мне нужно полное имя, и поэтому оно пригодится)
Результат: XmlFile: C:\Development\Test\build\Test.xml Элемент обновления: /MyConfiguration/Settings/RetentionTime. Внутренний текст: 30
Ошибок нет, сборка прошла успешно. Однако, когда я впоследствии открываю файл XML, элемент RetentionTime по-прежнему пуст.
Если я изменю XPath на несуществующий элемент, произойдет ошибка, так что это должно быть правильно. Вы знаете, если я что-то пропустил? я не понимаю...