If at first you don’t succeed, try try (catch catch) again
So I am cruising through the ASP.NET C# MVP web project we are working on, and happened upon this method (again, the names were changed to protect the not so innocent):
private void mView_LoadObjects(object sender, EventArgs e)
{
try
{
try
{
BusinessLayer.Class1 bizClass = new BusinessLayer.Class1();
mView.objects = bizClass.GetObjects(mView.ID1, mView.ID2);
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.Message);
throw;
}
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.Message);
throw;
}
}
However, the fun didn’t stop there. A little further down the class, I found this:
private void mView_LoadOtherObjects(object sender, EventArgs e)
{
try
{
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.Message);
throw;
}
}
I am thinking that the catch block on this second example was not hit very often.