<node label="Chemist Name">
<node label="John,Smith" searchId="1122" />
</node>
您好,
如果我将上述内容作为我的xml结构的一部分,并且我想找到一个标签,其中父标签为“Chemist Name”,其内部标签的标签为John,Smith,那么我可以得到searchid - 最好的方法是什么?
有没有办法可以,而不是无效地循环遍历我的文档中的每个xml值只是直接说
“让我的父母是化学家名字的节点,它的孩子有一个约翰史密斯的标签”
感谢
答案 0 :(得分:3)
将XPath与以下查询一起使用:
//node[@label = "Chemist Name"]/node[@label = "John,Smith"]
您可以在C#中使用它:
var doc = new XmlDocument();
doc.LoadXml(xml);
var node = doc.SelectSingleNode(
@"//node[@label = ""Chemist Name""]/node[@label = ""John,Smith""]");
其中xml
是包含XML数据的字符串。如果要直接从光盘加载XML,请改用XmlDocument.Load()
。
答案 1 :(得分:0)
xpath是这样做的方法。您应该在XPathNavigator和xpath上阅读更多内容。如果您遇到困难,请回复,我们可以提供帮助。