Principales respuestas
Como convertir clase a cadena XML ?

Pregunta
-
Hola ...
Tengo el siguiente codigo y me devuelve una cadena XML , como esta , como podria hacer para quitar el identificador de la version XML y las url del XSD y el XSI.
<?xml version="1.0" encoding="UTF-16"?> -<CambioEstadoSolicitudModel xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <NroSolicitud>48</NroSolicitud> <CambioEstado>148</CambioEstado> <FilasAfectadas>248</FilasAfectadas> -<Error> <CodigoError>448</CodigoError> <Descripcion>Error</Descripcion> <CantidadFilas>548</CantidadFilas> </Error> </CambioEstadoSolicitudModel>
Para que solo queden los Tags de esta forma:
-<CambioEstadoSolicitudModel> <NroSolicitud>48</NroSolicitud> <CambioEstado>148</CambioEstado> <FilasAfectadas>248</FilasAfectadas> -<Error> <CodigoError>448</CodigoError> <Descripcion>Error</Descripcion> <CantidadFilas>548</CantidadFilas> </Error> </CambioEstadoSolicitudModel>
Mi codigo:
public string ConvertirCambioEstadoSolicitudToString(CambioEstadoSolicitudModel model) { System.Xml.Serialization.XmlSerializer serializador = new System.Xml.Serialization.XmlSerializer(typeof(CambioEstadoSolicitudModel)); StringBuilder sb = new StringBuilder(); TextWriter tw = new StringWriter(sb); serializador.Serialize(tw, model); tw.Close(); string xml = sb.ToString(); return xml; }
EFRAIN MEJIAS C VALENCIA - VENEZUELA
- Editado Efrain Mejias Castillo jueves, 27 de febrero de 2020 22:03
Respuestas
-
Perdón, lo puse en VB...
public string SerializeToString<T>(T value) { var emptyNamespaces = new XmlSerializerNamespaces(new[] { XmlQualifiedName.Empty }); var serializer = new XmlSerializer(value.GetType()); var settings = new XmlWriterSettings(); settings.Indent = true; settings.OmitXmlDeclaration = true; using (var stream = new StringWriter()) using (var writer = XmlWriter.Create(stream, settings)) { serializer.Serialize(writer, value, emptyNamespaces); return stream.ToString(); } }
Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos
- Propuesto como respuesta Diana AcuñaModerator lunes, 2 de marzo de 2020 19:39
- Marcado como respuesta Efrain Mejias Castillo lunes, 2 de marzo de 2020 19:53
Todas las respuestas
-
Prueba algo parecido a esto. Es un método genérico
Public Function SerializeToString(Of T)(ByVal value As T) As String Dim emptyNamespaces = New XmlSerializerNamespaces({XmlQualifiedName.Empty}) Dim serializer = New XmlSerializer(value.[GetType]()) Dim settings = New XmlWriterSettings() settings.Indent = True settings.OmitXmlDeclaration = True Using stream = New StringWriter() Using writer = XmlWriter.Create(stream, settings) serializer.Serialize(writer, value, emptyNamespaces) Return stream.ToString() End Using End Using End Function
Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos
- Propuesto como respuesta Pablo RubioModerator viernes, 28 de febrero de 2020 17:51
-
Perdón, lo puse en VB...
public string SerializeToString<T>(T value) { var emptyNamespaces = new XmlSerializerNamespaces(new[] { XmlQualifiedName.Empty }); var serializer = new XmlSerializer(value.GetType()); var settings = new XmlWriterSettings(); settings.Indent = true; settings.OmitXmlDeclaration = true; using (var stream = new StringWriter()) using (var writer = XmlWriter.Create(stream, settings)) { serializer.Serialize(writer, value, emptyNamespaces); return stream.ToString(); } }
Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos
- Propuesto como respuesta Diana AcuñaModerator lunes, 2 de marzo de 2020 19:39
- Marcado como respuesta Efrain Mejias Castillo lunes, 2 de marzo de 2020 19:53