should exceptions be used to handle user error c# code example

Example 1: exception handling c#

try {
   // statements causing exception
} catch( ExceptionName e1 ) {
   // error handling code
} catch( ExceptionName e2 ) {
   // error handling code
} catch( ExceptionName eN ) {
   // error handling code
} finally {
   // statements to be executed
}

Example 2: caught exception is null

//Bug with VS: Exception e == null
//Happens when multiple catch variables are the same
//an example of the solution:
try
{
    // do something
}
catch (WebException webEx) // using a variable named 'webEx' for this catch
{
    Logger.Log("Error while tried to do something. Error: " + webEx.Message); // <-
}
catch (Exception ex) // using a DIFFERENT variable for this one
{
    Logger.Log("Error while tried to do something. Error: " + ex.Message);
}