LINQ to XML 進階篇(一)

來源:互聯網
上載者:User
LINQ to XML 軸
定義:
建立XML樹或將XML文檔載入到XML樹之後,可以進行查詢,從而尋找元素並檢索它們的值。
兩類軸方法:
-一些軸就是XELement和XDocument類中返回IEnumerable(T)集合的方法。
-另一些軸方法是Extensions類中的擴充方法。實現為擴充方法的軸對集合進行操作,然後返回集合。
XContainer是XElement的基類!
-
常見的軸方法:
-XContainer.Elements()返回集合
-XContainer.Descendants()返回集合
-XContainer.Element()返回單個元素
-XElement.Attribute(XName)返回單個屬性
-XElement.Attributes(XName)返回所有屬性集合
下面是XElement類(或其基類)的方法匯總,可以對XElement調用這些方法以返回元素集合
-XNode.Ancestors
-返回此元素的上級的XElement的IEnumerable(T)
-XContainer.Descendants
-返回此元素的子代的XElement的IEnumerable(T)
-XContainer.Elements
-返回此元素的子項目XElement的IEnumerable(T)
-XNode.ElementsAfterSelf
-返回此元素之後的元素的XElement的IEnumerable(T)
-XNode.ElementsBeforeSelf
-返回此元素之前的元素的XElement的IEnumerable(T)
-XElement.AncestorsAndSelf
-返回此元素及其上級的XElement的IEnumerable(T)
-XElementDescendantsAndSelf
-返回此元素及其子代的XElement的IEnumerable(T)
如何擷取元素的值,有兩種主要方法可以完成此操作
– 一種方法是將XElement 或XAttribute 強制轉換為所需的類型。
然後,顯式轉換運算子將元素或屬性的內容轉換為指定的類型,
並將其分配給變數。
– 此外,還可以使用XElement.Value 屬性或XAttribute.Value 屬性
• 但是,對於C#,強制轉換通常是更好的方法。在檢索可
能存在也可能不存在的元素(或屬性)的值時,如果將元
素或屬性強制轉換為可以為null 的類型,則代碼會更易於
編寫
• 無法通過強制轉換設定元素的內容,而通過
XElement.Value 屬性可以做到這一點

Code
1//檢索元素集合
2XElement root = new XElement("Root",
                new XElement("child1", "1"),
                new XElement("child2", "2")
                );
Console.WriteLine(root);
IEnumerable<XElement> childElements =
      from el in root.Elements()
      select el;
      foreach (XElement el in childElements)
            Console.WriteLine("Name: " + el.Name);
 Console.ReadLine();

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.