c# - XmlPoke 任务修剪值
问题描述
有没有办法使用以空格结尾的值作为 XmlPoke 值?当我执行任务时,值被替换但最后没有空格。
再生产:
测试目标:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Build">
<Copy SourceFiles="test.xml" DestinationFiles="output.xml"/>
<XmlPoke Query="/root/element/@attr[.='replaceme']|/root/replaceme" Value="X " XmlInputPath="output.xml"/>
</Target>
</Project>
测试.xml:
<root>
<element attr="replaceme" />
<replaceme/>
</root>
当我运行时:
MSBuild /v:detailed test.targets
我得到 output.xml 没有空格:
<root>
<element attr="X" />
<replaceme>X</replaceme>
</root>
有没有办法强制 XmlPoke 设置正确的值(最后有空格)?
解决方案
值是 MSBuild “项目”通常,项目代表文件路径,MSBuild 以特殊(秘密)方式处理这些。
因此,问题与 XML 转义无关,而是与 MSBuild item escaping相关。这是您可以强制使用空格字符的方法:
<XmlPoke ... Value="X%20" ... />
推荐阅读
- sql - Powershell foreach SQL Server 查询随机整理数据集
- reactjs - 如何使用 paymentIntent 和 confirmCardPayment 集成条带
- excel - For 循环和逐步着色单元格
- macos - 如何在 Mac 上卸载旧版 Unity
- javascript - 如何在 ReactJS 中的两个类和组件之间传递数据?
- javascript - 除了错误和警告之外,还有其他方法可以构建 create-react-app 项目吗?
- java - 如何正确地将图像下载到我的相机胶卷?
- amazon-web-services - 从 ES 中删除字段
- python-3.x - 如何将 txt 文件中的数据读入行和列以进行平均计算 Python
- javascript - 有没有一种简单的方法可以在 React Native 中创建事件和侦听器