我有2个具有相同属性但具有不同子节点值的元素。我可以查询以查找与该属性匹配的特定元素以及子节点值。具体来说,这是我用来查询的示例xml(原始xml中的每个元素都有10个以上的childe节点)。
<Book size="2">
<Title>abc</Title>
<Price>10</Price>
</Book>
<Book size="2">
<Title>xyz</Title>
<Price>20</Price>
</Book>
<Book size="4">
<Title>Harry</Title>
<Price>10</Price>
</Book>
所以,现在我想找到包含@size = "2"
和Title = xyz
的Book元素。
使用SelectSingleNode
方法可以实现吗?如果不是如何查询这个?
由于
答案 0 :(得分:14)
此:
//Book[@size='2'][Title='xyz']
或者这个:
//Book[@size='2' and Title='xyz']
请注意,当您的架构已知时,不建议使用//
。
答案 1 :(得分:1)
这有用吗?
//Book[@size='2']//Title[text() = "xyz"]/..