XDocument для 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. Любая помощь будет оценена.
Ответы
Ответ 1
XDocument для XmlDocument:
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xdoc.CreateReader());
XmlDocument для XDocument
XDocument xDoc = XDocument.Load(new XmlNodeReader(xmlDoc));
Чтобы получить корневой элемент из XDocument, вы используете xDoc.Root
Ответ 2
Другие люди сказали это, но здесь явно образец для преобразования XDocument в XElement:
XDocument doc = XDocument.Load(...);
return doc.Root;
Ответ 3
Простое преобразование из XDocument в XElement
XElement cvtXDocumentToXElement(XDocument xDoc)
{
XElement xmlOut = XElement.Parse(xDoc.ToString());
return xmlOut;
}