Rellenar XDocument desde una cadena


358

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.

Quiero intentar evitar el paso de primero tener que crear el archivo XML físico y saltar directamente a poblar el XDocument.

¿Algunas ideas?

Respuestas:




39

Qué tal esto...?

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

Esto fue tomado de los documentos de MSDN para XDocument.Load, que se encuentra aquí ...

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


2
Pero, como se señaló en otras respuestas, Parse es la forma de hacerlo.
Martin Peck el

77
En realidad, Parse usa internamente un StringReader.
Samuel

2
@Samuel (y los votantes) no todos los TextReaders son StringReaders. Este es un ejemplo del uso de TextReader, el hecho de que coincidentemente comparte el mismo lector que Parse es irrelevante.
Chris Marisic

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.