2014-07-06 12 views
20

Come posso convertire XElement in XDocument? C'è qualche metodo integrato per questo? L'unico modo che posso pensare è senza new XDocument(xelement.ToString()) che risulterà nella creazione di stringhe grandi e quindi analizzandole, riducendo così le prestazioni.Come convertire XElement in XDocument

+0

Perché avete bisogno di questo? – EZI

+0

Ho un codice che usa XDocument mentre ho XElement, non voglio riscriverlo – atikot

+0

funziona! grazie @EZI – atikot

risposta

32

Basta passare il XElement al costruttore di XDocument:

var xdoc = new XDocument(new XElement("a", "b")); 
+3

Se è un nuovo 'XElement', puoi anche prendere la proprietà' Document'. – Darek

+2

'XElement.Document' è sempre non nullo? –

2

che ho avuto grande successo con questo:

var xDoc = XDocument.Load(xml.CreateReader());