Jak przekonwertować XDocument na XElement?
Znalazłem następujące, szukając, ale jest to do konwersji między XDocument i XmlDocument, a nie XDocument i 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;
}
Nie mogłem znaleźć niczego, aby przekonwertować XDocument na XElement. Każda pomoc byłaby doceniana.
Odpowiedzi:
26 dla odpowiedzi nr 1XDocument to XmlDocument:
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xdoc.CreateReader());
XmlDocument to XDocument
XDocument xDoc = XDocument.Load(new XmlNodeReader(xmlDoc));
Aby pobrać element główny z XDocument, którego używasz xDoc.Root
26 dla odpowiedzi nr 2
Inni ludzie to powiedzieli, ale tutaj jest wyraźnie próbka do przekonwertowania XDocument na XElement:
XDocument doc = XDocument.Load(...);
return doc.Root;
6 dla odpowiedzi nr 3
Prosta konwersja z XDocument do XElement
XElement cvtXDocumentToXElement(XDocument xDoc)
{
XElement xmlOut = XElement.Parse(xDoc.ToString());
return xmlOut;
}