XElement.Load和XDocument.Load有什么区别?

Ayy*_*ash 33 c# xml linq

如上所述,XElement.Load和之间的区别是XDocument.Load什么?他们似乎都加载了一个XML文件.

And*_*are 32

不同之处在于XElement类型表示XML片段,而XDocument类型表示包含所有关联元数据的整个XML文档.

尽管如此,对于大多数简单的情况,您可以互换使用它们.

了解这两种类型之间查询的细微差别非常重要,有关这方面的更多信息,我建议您阅读查询XDocument与查询XElement:

通过加载文档时XDocument.Load,您会注意到编写查询的方式与加载文档 时的查询方式略有不同XElement.Load.


Jus*_*ner 10

没有多少场景需要您创建XDocument.相反,您通常可以使用XElement根节点创建XML树.除非您有特定的要求来创建文档(例如,因为您必须在顶层创建处理指令和注释,或者您必须支持文档类型),所以使用XElement作为根节点通常更方便.

直接来自XElement和XDocument对象的有效内容.就Load方法而言......它们都将内容加载到各自的对象中.