Does elmah handle caught exceptions as well

Chris Westbrook picture Chris Westbrook · Sep 18, 2008 · Viewed 14.8k times · Source

Does ELMAH logged exceptions even when they do not bubble up to the application? I'd like to pop up a message when an exception occurs and still log the exception. Currently I've been putting everything in try catch blocks and spitting out messages, but this gets tedious.

Answer

Michael La Voie picture Michael La Voie · May 8, 2009

ELMAH has been updated to support a new feature called Signaling.

This allows you to handle exceptions how you want, while still logging them to ELMAH.

try
{
    int i = 5;
    int j = 0;
    i = i / j; //Throws exception
}
catch (Exception ex)
{
    MyPersonalHandlingCode(ex);
    ErrorSignal.FromCurrentContext().Raise(ex); //ELMAH Signaling
}

Re-throwing exceptions can be a bad practice as it makes it difficult to trace the flow of an application. Using Signaling is a much better approach if you intended to handle the error in some fashion and simply want to document it.

Please check out this excellent guide by DotNetSlackers on ELMAH