我正在尝试从 xml 文档中提取某些值。在下面的示例中,我想将存储在“c”和“d”节点中的值存储在列表中,但仅限于“b”节点同时包含“c”和“d”的地方。到目前为止,我的代码循环遍历所有“b”节点,但我不确定在 while 循环中放入什么,或者这是否是最好的方法。
XmlDocument attrsXML = new XmlDocument();
attrsXML.LoadXml(dbReader["SampleXml"].ToString());
XPathNavigator nav = attrsXML.CreateNavigator();
XPathNodeIterator attribNodes = nav.Select("/a/b");
while (attribNodes.MoveNext())
{
// What do I need to put here in order to extract the 'c' and 'd' nodes?
// Any other nodes can be ignored (such as 'e' above). I am only interested
// when 'b' contains both 'c' AND 'd'.
}
从数据库加载的“SampleXml”是:
<a>
<b>
<c>Extract this</c>
<d>And this</d>
<e>not this</e>
</b>
<b>
<c>not this</c>
<e>not this</e>
</b>
<b>
<c>Extract this</c>
<d>And this</d>
</b>
</a>
任何帮助表示赞赏。