serializar XML

29/11/2004 - 12:55 por Xabi | Informe spam
Buenas:

Tengo un problema al serializar un objeto a xml, y es que al hacer:
string xml = System.Text.Encoding.UTF8.GetString(mm.ToArray());

me lo hace correcto pero el XML q devuelve contiene la siguiente cabecera:

<?xml version=\"1.0\"?>

<fw_pedido xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">

El caso es que las contrabarras y los simbolos dan error al intentar
meter el XML en un dataset.

Como podria hacer para q el XML generado fuera correcto?



Gracias y saludos



Xabi

Preguntas similare

Leer las respuestas

#1 David Salgado,MVP
29/11/2004 - 13:18 | Informe spam
¿ has probado reemplzando /" por una comilla simple ' ?

xml = xml.Replace("/"","'");


"Xabi" wrote in message
news:cof2m3$4jo$
Mostrar la cita
#2 Xabi
29/11/2004 - 15:39 | Informe spam
Buenas :) Gracias por tu respuesta ante todo.

Habia pensado en reemplazar todo aquello q estaba dando problemas pero no me
parecia la solucion correcta.

Preferiria saber pq me genera el XML de esa forma y no con la cabecera
normal.

Alguna idea?

Saludos

Xabi


"David Salgado,MVP" escribió en el mensaje
news:
Mostrar la cita
cabecera:
Mostrar la cita
intentar
Mostrar la cita
#3 David Salgado,MVP
29/11/2004 - 16:06 | Informe spam
Holas :D

Me da que el problema esta a la hora de serializar,
¿puedes pegar un poquillo más de código o comentar
cómo lo haces ?

Lo más comodo es usar el XMLSerializer y los atributos.

Saludos,

David Salgado



"Xabi" wrote in message
news:cofca9$7b2$
Mostrar la cita
#4 Xabi
29/11/2004 - 16:44 | Informe spam
Buenas David:

Te pasteo el codigo: Lo primero q te pasteo es la clase, y despues la
llamada a la serializacion:

[XmlRoot(ElementName="fw_pedido", Namespace="abcdef") ]

[XmlType(IncludeInSchema=false)]

public class Pedido

{

public Pedido()

{

//Detalle=null;

Detalle=new DetallePedido[0];

}

private string m_codigocliente;


public string Cliente

{

get{return m_codigocliente;}

set{m_codigocliente=value;}

}

[XmlElement("Detalle")]

public DetallePedido[] Detalle;

}



-SERIALIZACION-

Pedido P = new Pedido();

P.Cliente="prueba"

P.Detalle=DP;


System.IO.MemoryStream mm=null;

try

{

mm=new System.IO.MemoryStream();

XmlSerializerNamespaces NameSpaces=new XmlSerializerNamespaces();

NameSpaces.Add("","");

Serializer.Serialize(mm,P,NameSpaces);


}

catch(Exception ee)

{

MensajeBox(ee.ToString());

}

finally

{

mm.Close();

}



string xml = System.Text.Encoding.GetEncoding(1252).GetString(mm.ToArray());



y aqui es donde me devuelve el XML con la cabecera erronea y los simbolos
q hacen q la aplicacion casque.



Saludos y muchas gracias


Xabi















"David Salgado,MVP" escribió en el mensaje
news:
Mostrar la cita
no
Mostrar la cita
#5 fernando
29/11/2004 - 17:49 | Informe spam
hola , has probado poner asi:

"<?xml version="1.0" encoding="utf-8" ?>"

Fernando-Almería

"Xabi" escribió en el mensaje
news:cof2m3$4jo$
Mostrar la cita
Ads by Google
Search Busqueda sugerida