Hola amigos se que soy nuevo aqui por no postear, pero lo hare ya pronto me descocupe de un programillla que hago.
Me encuentro con un problema. Tengo un XML que lo tengo que enviar como string UTF8 y lo habro con un XMLDociument y lo paso a string para su salida y lo envio al webservice y me manda un error asi: <text>There is an error in XML document (1, 220).</text> que no se que significa realmente encontre varias deficiniones y algunas de serializacion pero esta correcto el xml y todo es aceptado por sat y validadores, entonces pieso que al enviarlo asi solamente:
'Primero paso el XML a string
Dim XMLDocu As New XmlDocument()
XMLDocu.Load(txtXmlWS.Text)
'Instancias el WS de Soriana, ya agrege la referencia web y le puse el nombre de WSSoriana
Dim ServicioSoriana As New WSoriana.wseDocReciboSoapClient()
'Hacer la peticion y cachas la respuesta.
Dim Respuesta As [String] = ServicioSoriana.RecibeCFD(XMLasString)
' ++++++
Dim XMLAceptado As String
XMLAceptado = Respuesta
If XMLAceptado = Respuesta Then
txtXmlWS.Text = Respuesta
Else
MsgBox("Hubo Error, reportarlo a Depto. Sistemas", MsgBoxStyle.OkOnly)
End If
Entonces ayer investigue y coloque unas lineas mas de codigo, estoy probando en este momento y espero este bien, pero pido opiniones si realmente al poner las 3 lineas de codigo mas en realidad me sale mi string o cadena con formato UTF8 para enviarlo al Web Service.
'Primero debes pasar tu XML a string
Dim XMLDocu As New XmlDocument()
XMLDocu.Load(txtXmlWS.Text)
Dim XMLString As [String] = XMLDocu.OuterXml
'CONVIERTO A UTF8
'----->INICIO
'Declaro utf8 con vara=iable UTF8Encoding
Dim utf8 As UTF8Encoding = New UTF8Encoding()
Dim encodedBytes As Byte() = utf8.GetBytes(XMLString)
'-----> FIN
'Instancias el WS de Soriana, puse nombre de WSSoriana
Dim ServicioSoriana As New WSoriana.wseDocReciboSoapClient()
'Hacer la peticion y cachar la respuesta.
Dim Respuesta As [String] = ServicioSoriana.RecibeCFD(XMLString)
' ++++++
Dim XMLAceptado As String
XMLAceptado = Respuesta
If XMLAceptado = Respuesta Then
txtXmlWS.Text = Respuesta
Else
MsgBox("Hubo Error, reportarlo a Depto. Sistemas", MsgBoxStyle.OkOnly)
End If
EN fin lo que envio es un xml como cadena, segun mis calculos trato de enviar un xml en formato UTF8 lo cargo y convierto a string, mas no se realmente si sale como string UTF8, por eso coloque las 3 lineas mas para ver si asi sale como UTF8.
Saludos espero me puedan ayudar.
Saludos ANTRAX.
PD.NetFcruz
Alguien tiene una idea si hago lo correcto o estoy mal.
Saludos...
No tienes permitido ver enlaces.
Registrate o Entra a tu cuenta
Corregi el post codigo es correcto para quienes necesiten cargar un xml y convertirlo a cadena y enviar esta cadena en formato utf-8 a un webservice.
Saludos...
Pueden cerrar el post. :D