2009-04-14 10 views
299

Estoy trabajando en algo y estoy tratando de averiguar si puedo cargar un XDocument desde una cadena. XDocument.Load() parece tomar la cadena que se le pasa como una ruta a un archivo XML físico.Rellenar XDocument de la Cadena

Quiero tratar de eludir el paso de tener que crear primero el archivo XML físico y pasar directamente a rellenar el XDocument.

¿Alguna idea?

Respuesta

22

Pruebe el método Parse.

35

¿Qué tal esto ...?

TextReader tr = new StringReader("<Root>Content</Root>"); 
XDocument doc = XDocument.Load(tr); 
Console.WriteLine(doc); 

Esto fue tomado de la documentación de MSDN para XDocument.Load, que se encuentran aquí ...

http://msdn.microsoft.com/en-us/library/bb299692.aspx

+1

Pero, como se ha señalado en otras respuestas, Parse es la manera de hacerlo. –

+7

En realidad, Parse usa internamente un StringReader. – Samuel

+1

@Samuel (y upvoters) no todos los TextReaders son StringReaders. Este es un ejemplo del uso de TextReader, el hecho de que casualmente comparte el mismo lector que Parse es irrelevante. –