如何将 XElement 转换为 XDocument
Posted
技术标签:
【中文标题】如何将 XElement 转换为 XDocument【英文标题】:How to convert XElement to XDocument 【发布时间】:2014-08-27 03:32:12 【问题描述】:?有一些内置的方法吗?
我能想到的唯一方法是不使用new XDocument(xelement.ToString())
,这将导致创建大字符串然后对其进行解析,从而降低性能。
【问题讨论】:
你为什么需要这个? 我有一些代码使用 XDocument 而我有 XElement,不想重写它 我真的试过了,“Task.Run(parser.GetEvent(new XDocument(outXe)));”但是看到一个错误,以为是转换的原因,结果我错过了 ()=> -1 表示未标记答案。 忘记了,因为愚蠢的 5 分钟规则... 【参考方案1】:只需将XElement
传递给XDocument
的构造函数即可:
var xdoc = new XDocument(new XElement("a", "b"));
【讨论】:
如果是新的XElement
,也可以获取Document
属性。
XElement.Document
总是非空的吗?【参考方案2】:
我在这方面取得了巨大的成功:
var xDoc = XDocument.Load(xml.CreateReader());
【讨论】:
以上是关于如何将 XElement 转换为 XDocument的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET MVC4 Web API MediaTypeFormatter 转换器将 XElement 转换为 JSON