I am executing stored procedures from my Data Access layer and catching any SqlExceptions which return my own custom error messages.

How can i throw the SqlException error back to the Application where i can display the correct error message and decide on what to allow the user to do next? The only thing that i can pass back with Throw New ApplicationException or Exception is the message and InnerException, not the procedure name, error number etc etc...

Hope that makes sence?! Thanks.