Archivos de la categoría WCF

WCF. Usar excepciones nativas de .net en lugar de FaultException

¡Hola!

Para estrenar este blog, vengo con una entrada en la que os hablo de WCF, y de cómo propagar errores como Exception en lugar de usar FaultException.

¿Para qué puede servir esto?

Básicamente, en mi caso lo necesitaba para poder transmitir más información de la que por defecto FaultException transmite a la hora de lanzar un error.

Inconvenientes: Solo funcionará si tanto el servidor como el cliente están usando .net, pues esto por debajo usa Soap por interoperabilidad, pero al serializar exceptions, vamos a usar el NetDataContractSerializer; así que, ¡adiós a la interoperabilidad! 🙁

¿Ventajas? Si estamos trabajando con .net, podemos hacer cosas tan sencillas como:

try
{
    proxyCliente.RealizaOperacion();
}
catch (EntityException ex)
{
    // ...
}
catch (Exception exGeneral)
{
    // ...

Así, en nuestro error, podremos ver toda la información que el servidor posee sobre el mismo.

El artículo original es muy largo y está en inglés. Aquí os incluyo un adjunto como ejemplo para que veáis esto en código. Está compilado en Visual Studio 2010 (el original era de 2008), y queda bastante claro el ejemplo. De todas formas, aquí os dejo el artículo original en inglés.

¡Que os sirva! 🙂

WcfExtensions.zip

Entrada visitada 848 veces