Excepciones personalizadas desde WCF

29/04/2009 - 09:48 por Ana | Informe spam
Hola a todos,


Estoy desarrollando un servicio WCF y me encuentro con el siguiente
problema, quiero lanzar excepciones personalizadas desde el servicio y
recogerlas en la aplicación pero no lo consigo. Utilizo la siguiente clase:

[Serializable]

public class MiException : Exception

{

public MiException(string Origen, Exception inner) :

base(Origen,inner)

{

}

}



Desde el cliente no me dejar recoger el tipo de execpcion MiException
siempre me llegan como FaultException. ¿Alguien sabe como puedo hacerlo?

Preguntas similare

Leer las respuestas

#1 Willy Mejia
29/04/2009 - 16:23 | Informe spam
Aunque lograras "serializar" la excepción, para el servicio sería
simplemente un dato serializado más, el cual no se transmite si existe un
fallo en el servicio.

Por ello en lugar de intentar hacer eso, utiliza un FaultContract ("contrato
de fallo") para incluir los mensajes personalizados (agregados al
FaultException) que deseas que lleguen al cliente.
http://willyxoft.wordpress.com/arti...rato-fallo

En base al mensaje devuelto crea y lanza tu excepción personalizada en el
cliente.

P.D.
Si bien WCF u otras implementaciones nos permiten una abstracción "orientada
a objetos", no debemos olvidar que la interacción con los servicios web es
mediante mensajes (SOAP) o incluso con simples peticiones-respuestas (REST).

Saludos,
Willy Mejia


"Ana" escribió en el mensaje de
noticias:
Hola a todos,


Estoy desarrollando un servicio WCF y me encuentro con el siguiente
problema, quiero lanzar excepciones personalizadas desde el servicio y
recogerlas en la aplicación pero no lo consigo. Utilizo la siguiente
clase:

[Serializable]

public class MiException : Exception

{

public MiException(string Origen, Exception inner) :

base(Origen,inner)

{

}

}



Desde el cliente no me dejar recoger el tipo de execpcion MiException
siempre me llegan como FaultException. ¿Alguien sabe como puedo hacerlo?



Respuesta Responder a este mensaje
#2 Ana
06/05/2009 - 17:37 | Informe spam
Gracias willy!!


"Willy Mejia" wrote in message
news:
Aunque lograras "serializar" la excepción, para el servicio sería
simplemente un dato serializado más, el cual no se transmite si existe un
fallo en el servicio.

Por ello en lugar de intentar hacer eso, utiliza un FaultContract
("contrato de fallo") para incluir los mensajes personalizados (agregados
al FaultException) que deseas que lleguen al cliente.
http://willyxoft.wordpress.com/arti...rato-fallo

En base al mensaje devuelto crea y lanza tu excepción personalizada en el
cliente.

P.D.
Si bien WCF u otras implementaciones nos permiten una abstracción
"orientada a objetos", no debemos olvidar que la interacción con los
servicios web es mediante mensajes (SOAP) o incluso con simples
peticiones-respuestas (REST).

Saludos,
Willy Mejia


"Ana" escribió en el mensaje de
noticias:
Hola a todos,


Estoy desarrollando un servicio WCF y me encuentro con el siguiente
problema, quiero lanzar excepciones personalizadas desde el servicio y
recogerlas en la aplicación pero no lo consigo. Utilizo la siguiente
clase:

[Serializable]

public class MiException : Exception

{

public MiException(string Origen, Exception inner) :

base(Origen,inner)

{

}

}



Desde el cliente no me dejar recoger el tipo de execpcion MiException
siempre me llegan como FaultException. ¿Alguien sabe como puedo hacerlo?






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida