Stiamo costruendo un servizio web (SOAP, .Net) che parlerebbe con (principalmente) client nativi (windows, C ++) e ci chiediamo quale sia il modo migliore per comunicare errori al client (es. SomethingBadHappened come servizio di accesso non disponibile o qualcosa di simile all'utente non trovato) e non sono stati in grado di decidere tra il lancio dell'eccezione al client o l'utilizzo di un qualche tipo di modello di codice di errore per fare quanto sopra.
Cosa preferiresti sulla gestione sul lato client: ricevere un codice di errore o gestire un'eccezione ServerFault che contiene il motivo dell'errore?
1) Perché stiamo pensando all'eccezione: perché renderebbe il codice lato server molto più uniforme
2) Perché stiamo pensando a codici di errore: perché pensiamo che abbia più senso dal punto di vista del lato client.
Se 2) è davvero vero, vorremmo probabilmente cercare codici di errore che eccezioni? È questo il caso qui?
Inoltre, la risposta cambierebbe se stessimo parlando con client gestiti anziché con client nativi?