XElement 和 XDocument 到底有什么区别?
生活随笔
收集整理的這篇文章主要介紹了
XElement 和 XDocument 到底有什么区别?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
咨詢區
Rana
請問在xml操作中,XElement 和 XDocument 到底有什么區別?
回答區
nawfal
微軟官方文檔:https://msdn.microsoft.com/en-us/library/bb675196.aspx 上說的特別清楚,假定你有這樣一個 test.xml 文件。
<Root><Child1>1</Child1><Child2>2</Child2><Child3>3</Child3> </Root>1. XDocument
如果你用 XDocument 操控的話,寫法大概是這樣的。
foreach?(var?element?in?XDocument.Load("test.xml").Elements())Console.WriteLine(element);然后可以得到如下的 xml 。
<Root><Child1>1</Child1><Child2>2</Child2><Child3>3</Child3> </Root>如果你想要提取 Child1 節點,你不得不這樣做。
var?child1?=?XDocument.Load("test.xml").Element("Root").Element("Child1").Value;或者
var?child1?=?XDocument.Load("test.xml").Root.Element("Child1").Value;2. XElement
如果用 XElement 操控 xml 的話,大概是這樣的。
foreach?(var?element?in?XElement.Load("test.xml").Elements())Console.WriteLine(element);然后就可以得到如下 xml。
<Child1>1</Child1> <Child2>2</Child2> <Child3>3</Child3>如果你想提取 Child1 節點,可以這么寫。
var?child1?=?XElement.Load("test.xml").Element("Child1").Value;總而言之, XElement 它是以忽略 根節點 的方式進行操作,而 XDocument 卻不是,也就是說:
XDocument.Root = XElement
或者。
XDocument.Root.Elements() = XElement.Elements()
點評區
XDocument 表示的是整個xml文檔,如果你想操作整個xml,那就建議使用。
XElement 表示的是 xml 元素,它只是 xml 的一個內部組成部分而已。
總結
以上是生活随笔為你收集整理的XElement 和 XDocument 到底有什么区别?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Xamarin效果第十八篇之GIS中复合
- 下一篇: 在 ASP.NET Core 中使用 H