簡體   English   中英

無法使用XDocument.Element獲取xml節點

[英]Unable to fetch xml node using XDocument.Element

這是我要獲取xml節點的XML示例。

XDocument doc = XDocument.Load("PurchaseOrder.xml");

<Rootelement>
    <element1 />
    <element2 />
    <element2 />
    <element3 />
</Rootelement>

我想從xml中找出element2

這是我的代碼段。

var xElement = XDoc.Element("Rootelement").Element("element2");

但我顯示為空。 我在xml中沒有任何名稱空間,並且不能包含一個名稱空間。

請幫忙。

 XmlDocument xml = new XmlDocument();
    xml.LoadXml(myXmlString);

    XmlNodeList xnList = xml.SelectNodes("/Names/Name");
    foreach (XmlNode xn in xnList)
    {
      string firstName = xn["FirstName"].InnerText;
      string lastName = xn["LastName"].InnerText;
      Console.WriteLine("Name: {0} {1}", firstName, lastName);
    }

此代碼將返回標記<firstName><LastName>所有值。 如果只需要一個值,則可以刪除foreach循環,您可以繼續進行。

這是XML代碼

<Names>
    <Name>
        <FirstName>John</FirstName>
        <LastName>Smith</LastName>
    </Name>
    <Name>
        <FirstName>James</FirstName>
        <LastName>White</LastName>
    </Name>
</Names>

這樣嘗試;

var xElement = doc.Root.Element("element2");

如果要在文檔中的任何位置查找元素,請使用;

doc.Descendants("element2")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM