我有以下 XML:
<?xml version="1.0" encoding="UTF-8" ?>
<bookstore xmlns="urn:hl7-org:v3" xmlns:voc="urn:hl7-org:v3/voc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:hl7-org:v3 PORT_MT020001.xsd" type="Observation" classCode="OBS" moodCode="EVN">
<book>
<title lang="en">Harry Potter</title>
<price>29.99</price>
</book>
<book>
<title lang="en">Learning XML</title>
<price>39.95</price>
</book>
</bookstore>
当我尝试XMLDocument.SelectNodes()
像这样在上面的 xml 上使用时:
XmlNodeList xmlNodelist = doc.SelectNodes("//book");
Console.WriteLine(xmlNodelist.Count);
我得到以下结果:
0
当我将xmlns
根节点中的属性值更改为空时,如下所示:
<bookstore xmlns="" ...........>
然后我得到正确的结果:
2
为什么会这样?xmlns
根节点中的属性值对我来说至关重要。这个问题有什么解决办法吗?