XmlMassUpdate 多个值(MSBuild 社区任务)
假设您有一个具有以下设置的配置文件:
<someNode>
<node>value A</node>
<node>value B</node>
<node>value C</node>
</someNode>
对于我来说,我无法弄清楚如何让 XmlMassUpdate 注入以下内容:
<someNode>
<node>value 1</node>
<node>value 2</node>
<node>value 3</node>
</someNode>
结果如下所示:
<someNode>
<node>value 1</node>
<node>value B</node>
<node>value C</node>
</someNode>
我要拍摄的是:
<someNode>
<node>value A</node>
<node>value B</node>
<node>value C</node>
<node>value 1</node>
<node>value 2</node>
<node>value 3</node>
</someNode>
编辑:我发现一个临时解决方案(见下文)...不过仍然对更好的东西感兴趣。
<someNode>
<node xmu:key="id" id="1">value A</node>
<node xmu:key="id" id="2">value B</node>
<node xmu:key="id" id="3">value C</node>
</someNode>
Say you have a config file with the following settings:
<someNode>
<node>value A</node>
<node>value B</node>
<node>value C</node>
</someNode>
For the life of me, I can't figure out how to get XmlMassUpdate to inject the following:
<someNode>
<node>value 1</node>
<node>value 2</node>
<node>value 3</node>
</someNode>
The result looks like this:
<someNode>
<node>value 1</node>
<node>value B</node>
<node>value C</node>
</someNode>
What I'm shooting for is:
<someNode>
<node>value A</node>
<node>value B</node>
<node>value C</node>
<node>value 1</node>
<node>value 2</node>
<node>value 3</node>
</someNode>
EDIT: I found a temporary solution (see below)... still interested in something better, though.
<someNode>
<node xmu:key="id" id="1">value A</node>
<node xmu:key="id" id="2">value B</node>
<node xmu:key="id" id="3">value C</node>
</someNode>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
答案是将唯一属性应用于元素并将其用作 xmu:key (请参阅上面的编辑)。
The answer is to apply a unique attribute to the element and use that as the xmu:key (see EDIT above).
获取社区任务代码。
替换:
为:
在方法中:
private XmlNodelocateTargetNode(XmlNodeparentNode, XmlNodenodeToFind, XmlAttribute keyAttribute)
重建。
你已经完成了:)
Get community tasks code.
Replace:
With:
In method :
private XmlNode locateTargetNode(XmlNode parentNode, XmlNode nodeToFind, XmlAttribute keyAttribute)
Rebuild.
You're done :)