XDocument到XElement

时间:2012-11-19 19:10:28

标签: c# xml linq-to-xml xelement

如何将XDocument转换为XElement?

我通过搜索找到了以下内容,但是它用于在XDocument和XmlDocument之间进行转换,而不是XDocument和XElement。

public static XElement ToXElement(this XmlElement xmlelement)
{
    return XElement.Load(xmlelement.CreateNavigator().ReadSubtree());
}

public static XmlDocument ToXmlDocument(this XDocument xdoc)
{
    var xmldoc = new XmlDocument();
    xmldoc.Load(xdoc.CreateReader());
    return xmldoc;
}

我找不到将XDocument转换为XElement的任何内容。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:28)

其他人已经说过,但这里明确是一个将XDocument转换为XElement的示例:

 XDocument doc = XDocument.Load(...);
 return doc.Root;

答案 1 :(得分:27)

XDocument到XmlDocument:

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xdoc.CreateReader());

XmlDocument到XDocument

XDocument xDoc = XDocument.Load(new XmlNodeReader(xmlDoc));

要从XDocument获取根元素,请使用xDoc.Root

答案 2 :(得分:6)

从XDocument到XElement的简单转换

XElement cvtXDocumentToXElement(XDocument xDoc)
{
    XElement xmlOut = XElement.Parse(xDoc.ToString());
    return xmlOut;
}