我需要添加子节点并为节点设置属性,它是节点系列中的第二个实例。 但我似乎无法找到“SelectSingleNode”的方法,以便我可以添加子项和设置属性。 这是我到目前为止所创造的:
<Markers ObjectID="22" ClassID="bee50706-b524-416c-9f03-b596ce5f6866" Version="2">
<Markers Version="1" ObjectRef="24">
<Marker Version="1" Index="0">
<Second ObjectRef="23"/>
<First>5009872344</First>
</Marker>
<Marker/>
</Markers>
<Node Version="1"/>
</Markers>
我无法继续下去,因为我无法设置节点“Marker”的第二个实例的属性。我尝试的所有内容都设置了“标记”的第一个实例并替换了它已有的内容。
这是我最终需要的:
<Markers ObjectID="22" ClassID="bee50706-b524-416c-9f03-b596ce5f6866" Version="2">
<Markers Version="1">
<Marker Version="1" Index="0">
<Second ObjectRef="23"/>
<First>5009119315200</First>
</Marker>
<Marker Version="1" Index="1">
<Second ObjectRef="24"/>
<First>419274305049600</First>
</Marker>
</Markers>
<Node Version="1"/>
</Markers>
//Markers[@ObjectID='22']/Markers/Marker
的节点列表在列表中生成2个项目。
我试图弄清楚如何从这个列表中引用单个节点,但我不知道如何。
有没有办法识别没有属性的节点??? 谢谢你的帮助
答案 0 :(得分:0)
如果您的要求确实是在同一个父级中获得第二个<Marker>
,则可以使用xpath索引来实现这一目标:
//Markers[@ObjectID='22']/Markers/Marker[2]
另一种可能的方法,就像你问的那样,让<Marker>
节点没有任何属性:
//Markers[@ObjectID='22']/Markers/Marker[not(@*)]