que tienen un método como ...declara que un método siempre arroja una excepción?
int f() {
try {
int i = process();
return i;
} catch(Exception ex) {
ThrowSpecificFault(ex);
}
}
Esto produce un error de compilación, "no todas las rutas de código devuelven un valor". Pero en mi caso ThrowSpecificFault() arrojará siempre (la apropiada) excepción. Entonces me veo forzado a poner un valor de retorno al final, pero esto es feo. El propósito de este patrón en primer lugar es porque "proceso()" es una llamada a un servicio web externo, pero necesita traducir una variedad de excepciones diferentes para que coincidan con la interfaz esperada de un cliente (~ patrón de fachada, supongo) .
¿Alguna manera más limpia de hacer esto?
Relacionado: [¿Existe un atributo estándar "nunca regresa" para las funciones C#?] (Http://stackoverflow.com/questions/1999181/is-there-a-standard-never-returns-attribute-for-c -funciones) –