xml文件根节点有属性读取不到节点

xml文件内容:

<?xml version="1.0" encoding="utf-8"?>
<testroot xmlns="http://www.test.cn/test">
  <identity>
    <serviceId>serviceCynosure</serviceId>
    <channelId>chanCynosure</channelId>
    <password>123456</password>
  </identity>
</testroot>

读取的方法:

        System.Xml.XmlDocument docreader = new System.Xml.XmlDocument();
        docreader.Load("a.xml");
        XmlNamespaceManager xmlnam = new XmlNamespaceManager(docreader.NameTable);
        xmlnam.AddNamespace("a", "http://www.test.cn/test");
        var testnode = docreader.SelectSingleNode(@"/a:testroot/a:identity/a:serviceId", xmlnam);
            if (testnode != null)
            {
                MessageBox.Show(testnode.InnerText);
            }

 消息框显示:serviceCynosure

这个关键在XmlNamespaceManager使用,对命名空间的解析。

原文地址:https://www.cnblogs.com/Cynosure/p/2720784.html