//记得引用此命名空间:using System.Xml.Linq;   
               XDocument oXDoc = XDocument.Load(@"你的XML文件地址");   //如C:\test.xml
               var qurey = from x in oXDoc.Descendants("resources")   
                           select new  
                           {   
                              ConnetStringValue=x.Element("culture").Value   
                           };   
              foreach(var t in query)
              {
                    Console.WriteLine("culture: {0}", t);
              } 
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/q107770540/archive/2010/07/06/5716014.aspx

解决方案 »

  1.   

           XmlDocument _Document = new XmlDocument();
                _Document.Load("123.xml");
                XmlNamespaceManager _Manager = new XmlNamespaceManager(_Document.NameTable);
                _Manager.AddNamespace("Namespace",_Document.ChildNodes[1].NamespaceURI);            XmlNodeList _List = _Document.SelectNodes("Namespace:feed/Namespace:resourcesList", _Manager);
      

  2.   

    用DATASET啊,写起来很简单.
    DataSet ds=new DataSet();
    ds.readerXML(XMLPAHT);
    listbox.datasource=ds.tables[0];
    还要加上一句listbox项的邦定数据[resources],
    这样就OK了。试一下吧.但不知道你是否是你想要的。
      

  3.   

     XmlDocument Xmlfile = new XmlDocument();
                Xmlfile.Load(@"...");
                XmlNamespaceManager NsMgr = new XmlNamespaceManager(Xmlfile.NameTable);
                NsMgr.AddNamespace("ns", Xmlfile.DocumentElement.NamespaceURI);          
                XmlNodeList Nodelist = Xmlfile.SelectNodes("//ns:resources",NsMgr);
                foreach (XmlNode node in Nodelist)
                {
                    NsMgr.AddNamespace("ns", node.NamespaceURI);
                    XmlNode productid = node.SelectSingleNode("//ns:culture", NsMgr);
                }
    我一开始想采用的这样的做法,不过似乎因为在迭代的时候子结点的命名空间相同,无法实现.
    请问有办法按这个思路解决么?
      

  4.   

    你这个xml文件格式不对  
    打开 报错
      

  5.   

    <?xml version="1.0" encoding="utf-8"?>
    <feed xmlns="http://www.w3.org/2005/Atom">
      <resourcesList>
      <resources>
      <culture>en</culture>
      </resources>
      <!-- included in file -->
      <resources>
      <culture>zh-cn</culture>
      <url>http://www.microsoft.com/web/webpi/2.0/resources/WebProductList_zh-cn.xml</url>
      </resources>
      <resources>
      <culture>zh-tw</culture>
      <url>http://www.microsoft.com/web/webpi/2.0/resources/WebProductList_zh-tw.xml</url>
      </resources>
      </resourcesList>
    </feed>
    这儿少了个标记.
    现在的问题是我在5楼中提到的,在带命名空间的xml中从子结点用selectsinglenode选择单个节点.谢谢