Non mi sembra un buon modo di gestire gli errori. Non vedo la ragione per mettere in una dll un blocco try catch che non fa altro che restituire il messaggio e qualche altra informazione (ancora peggio mettere queste informazioni dentro una property!). Tanto meglio che la funzione che incontra una eccezione ritorni a chi la sta usando l'eccezione stessa. Se nella funzione e' necessario gestire le risorse rimaste aperte (vedi connection) basta mettere il tutto in un blocco try finally (senza il catch) e nel finally chiudere le risorse.Originariamente inviato da Kahm
secondo me basta che nelle funzioni delle dll ti fai ritornare un errore oppure una propertu pubblica in cui controlli se è valorizzata, la quale conterra' l'errore
esempio nella dll:
...
oppure una property pubblica penso che vada bene e nel web form ogni volta ti vai a vedere se è pieno o meno
La regola da seguire per la gestione degli errori in una situazione clientwebowin -> dll e' che le eccezioni vengano gestite dal client della libreria. Se vi e' la necessita' di gestire una o piu' eccezioni personalizzate si possono creare tutte le eccezioni che servono con poche righe di codice (cosi come consigliato piu' sopra) e nel cliente inserire dei
catch ex as tuacustomexception
ma non sarebbe meglio mettere direttamente nella pagina aspx (file .vb o .aspx a seconda se si usa il codebehind o meno) qualcosa di simile aOriginariamente inviato da djciko
....e nella pagina aspx che istanzia la classe utente....
....codice:.... try utente.login("user", "pass") catch exLogin as UtenteNonTrovatoException response.write("errore nel login") end try