Buenas tardes.
Estoy tratando de adjuntar un XML sin guardar como archivo a un correo. El XML lo creo en un MemoryStream y creo que ahí está el problema. El XML me aparece siempre cortado, con un máximo de 1,02 KB y 1024 caracteres. Este es el código:
Código vb:
Ver original'Generación del XML del pedido
Dim stream As New IO.MemoryStream
Try
Dim xtw As New XmlTextWriter(stream, Encoding.Default)
xtw.WriteStartDocument()
xtw.WriteStartElement("Pedido")
xtw.WriteElementString("IDPedido", idPedido)
xtw.WriteElementString("Nombre", nombre)
xtw.WriteElementString("Apellidos", apellidos)
xtw.WriteElementString("Correo", correo)
xtw.WriteStartElement("Facturacion")
xtw.WriteElementString("Nombre", facturaNombre)
xtw.WriteElementString("Documento", facturaDocumento)
xtw.WriteElementString("Direccion", facturaDireccion)
xtw.WriteElementString("Localidad", facturaLocalidad)
xtw.WriteElementString("CP", facturaCP)
xtw.WriteElementString("Provincia", facturaProvincia)
xtw.WriteElementString("TipoIVA", XmlConvert.ToString(carro.TipoIVA))
xtw.WriteEndElement() 'Facturacion
If carro.Envio Then
xtw.WriteStartElement("Envio")
xtw.WriteElementString("Direccion", envioDireccion)
xtw.WriteElementString("Localidad", envioLocalidad)
xtw.WriteElementString("CP", envioCP)
xtw.WriteElementString("Provincia", envioProvincia)
xtw.WriteElementString("Telefono", envioTelefono)
xtw.WriteEndElement() 'Envio
End If
xtw.WriteStartElement("Conceptos")
For Each dr As DataRow In carro.Conceptos.Rows
xtw.WriteStartElement("Concepto")
xtw.WriteElementString("IDProducto", dr("IDProducto"))
xtw.WriteElementString("Producto", dr("Producto"))
xtw.WriteElementString("PrecioUnidad", XmlConvert.ToString(dr("PrecioUnidad")))
xtw.WriteElementString("Cantidad", dr("Cantidad"))
xtw.WriteElementString("Importe", XmlConvert.ToString(dr("Total")))
xtw.WriteEndElement() 'Concepto
Next
xtw.WriteEndElement() 'Conceptos
xtw.WriteEndElement() 'Pedido
xtw.WriteEndDocument()
stream.Seek(0, IO.SeekOrigin.Begin)
Catch ex As Exception
mens("Error al generar el XML. " & ex.Message, pnlMensajePedido, lblMensajePedido, ex)
Exit Sub
End Try
Dim mAtt As New Attachment(stream, String.Format("{0}.xml", idPedido))
Gracias y un saludo.