一个XML文件的结构如下所示:
<Define xmlns="http://www.aaabbb.com/v2_0_2">
<Version>2.0.2</Version>
</Define>请问如何获取到Version的值?======================================================================================================假如XML文件结构修改为下面的
<Define xmlns:aaa="http://www.aaabbb.com/v2_0_2">
<Version>2.0.2</Version>
</Define>那我可以使用如下代码进行获取:string strVersion = "";
XmlDocument objXmlDoc = new XmlDocument();
objXmlDoc.Load(strXmlDocPath);
XmlNamespaceManager nsmgr = new XmlNamespaceManager(new NameTable());
nsmgr.AddNamespace("aaa", "http://www.aaabbb.com/v2_0_2");
XmlNode node = objXmlDoc.DocumentElement.SelectSingleNode("/Define/Version", nsmgr);
if (node != null)
{
    strVersion = node.InnerText.ToString();
}但是对于上面代码中那种xmlns后面没有东西的代码该怎么访问啊?

解决方案 »

  1.   

    string strVersion = "";
    XmlDocument doc = new XmlDocument();
    doc.Load(fileName);
    XmlNodeList NodeList = doc.SelectNodes("Define");
    strVersion =NodeList["Version"].InnerText;
      

  2.   

    SelectSingleNode
      

  3.   

    strVersion = NodeList.SelectSingleNode["Version"].InnerText;应该可以,你可以断点调试一下看 doc 和 NodeList 里面有什么
      

  4.   

    但是对于上面代码中那种xmlns后面没有东西的代码该怎么访问啊?没有就随便写个名字,方法一样
    nsmgr.AddNamespace("x", "http://www.aaabbb.com/v2_0_2");
    XmlNode node = objXmlDoc.DocumentElement.SelectSingleNode("/x:Define/x:Version", nsmgr);
      

  5.   


    NodeList 根本就没有SelectSingleNode方法啊!