If my response to errors in a try/catch block is to redirect users to an error page, the try/catch block behaves as if there was an error when there was not. If I change it to do something else, the code works fine.
Example:
try
{
//do this SQL server stuff
}
catch
{
Response.Redirect(error.htm)
//Change this to lblErr.Text = "SQL ERROR"; and the code in try works fine.
}
From another post I learned there was a boolean overload to the Response.Redirect() method. I tried both true and false and the try/catch block still behaved as if there were an error.
What’s the deal?
When you Response.Redirect, that throws a ThreadAbortException. So to get the outcome you are describing you’ll want to mod your code as follows: