Pregunta

Estoy tratando de hacer una prueba de servicio web y lanzar una SoapException. Pero al abrir el servicio a través del navegador, que muestra un error interno del servidor -. 500

Si trato de consumir de forma manual mediante el envío de un SOAPRequest creado manualmente (en StringBuilder), me sale el mismo error "ServerError - 500" en Visual Studio sí en la línea "WebResponse response = req.GetResponse()"

¿Hay alguna forma puede ver realmente el "fallo en la respuesta XML".

¿Fue útil?

Solución 3

después de navegar a través de 5-6 horas, finalmente lo consiguió ...... aquí está:

Cuando recibe la respuesta manualmente, utilice la siguiente:

try
{
    WebResponse response = req.GetResponse();                
    Stream str = response.GetResponseStream();
    StreamReader rdr = new StreamReader(str);
    Response.Write(rdr.ReadToEnd());          
    Response.End();
}
catch (WebException webEx)
{
    Stream str = webEx.Response.GetResponseStream();
    StreamReader rdr = new StreamReader(str); 
    Response.Write(rdr.ReadToEnd());          
    Response.End();
}

Otros consejos

Parece que hay algo mal con el servicio y hay que depurarlo en el lado del servidor en lugar del lado del cliente. Me llegado a esta conclusión porque usted tiene un problema con su código de cliente y un navegador web.

Si se asume que está utilizando .NET que han permitido la visualización de los errores ASP.NET en el servidor? Ver este artículo para obtener información.

Actualización:

Así que usted está lanzando un error en el servidor y desea obtener el texto de error en el cliente? Un error en el servidor se supone que debe dar como resultado un mensaje de error 500 y es poco probable que vuelva cualquier XML al cliente. Tal vez se puede pasar algo al constructor SoapException?

¿Has mirado en los documentos de SoapException ? Tienen algunos ejemplos de la transmisión de información mediante la propiedad Detalle de SoapException.

Se puede llegar a la asmx (suponiendo que está utilizando asmx) en el navegador para ver si está funcionando en absoluto?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top