C# 什么';XElement.Load和XDocument.Load之间的区别是什么?
如上所述,C# 什么';XElement.Load和XDocument.Load之间的区别是什么?,c#,xml,linq,C#,Xml,Linq,如上所述,XElement.Load和XDocument.Load之间有什么区别?它们似乎都加载了一个XML文件。不同之处在于XElement类型表示一个XML片段,而XDocument类型表示一个包含所有相关元数据的完整XML文档 尽管如此,对于大多数简单的情况,您可以互换使用它们 了解这两种查询类型之间的细微差异非常重要,有关这方面的更多信息,我建议您阅读: 当您通过加载文档时 XDocument.Load,您会注意到 您必须编写查询 与您在 通过XElement.load加载 没有太多的情
XElement.Load
和XDocument.Load
之间有什么区别?它们似乎都加载了一个XML文件。不同之处在于XElement
类型表示一个XML片段,而XDocument
类型表示一个包含所有相关元数据的完整XML文档
尽管如此,对于大多数简单的情况,您可以互换使用它们
了解这两种查询类型之间的细微差异非常重要,有关这方面的更多信息,我建议您阅读:
当您通过加载文档时
XDocument.Load
,您会注意到
您必须编写查询
与您在
通过XElement.load加载
没有太多的情况会发生这种情况
要求您创建XDocument。
相反,您通常可以创建
具有XElement根节点的XML树。
除非你有特殊要求
要创建文档(例如,
因为您必须创建处理
顶部的说明和注释
级别,否则您必须支持文档
类型),通常更方便
使用XElement作为根节点
直接从。至于加载方法……它们都将内容加载到各自的对象中。加载注释时存在差异,在XElement.Load()的情况下不会加载内容 而XDocument.Load()也将获得注释
因此,在使用Xlinq时,我们还应该使用XDocument,如果要通过web将生成的XML发送到某些web服务,建议使用XDocument。但是您要求
.Load
,因此这可能不是您的情况。我需要加载/修改/保存一些InfoPath表单,它们大量使用了处理说明。在我找到这篇文章并切换到XDocument之前,使用XElement会产生令人困惑的结果。所以。。。谢谢