5.11. Displaying Exception Information
Problem
There are several different methods of displaying exception information. You need to choose the best one to use.
Solution
The .NET platform supports several methods for displaying exception
information, depending on the specific type of information that you
want to show. The easiest method is to use the
ToString
method
of the thrown exception object, usually in the
catch
block of an exception handler:
catch(Exception e) { Console.WriteLine(e.ToString( )); }
Another method is to manually display the individual properties of
the thrown exception and iterate through each inner exception, if any
exist. For example, the following custom method is called from a
catch
block that takes a single exception object
as a parameter and proceeds to display its information, including
information on all inner
exceptions:
public void DisplayException(Exception e) { Console.WriteLine("Outer Exception."); Console.WriteLine("ExceptionType: " + e.GetType( ).Name); Console.WriteLine("HelpLine: " + e.HelpLink); Console.WriteLine("Message: " + e.Message); Console.WriteLine("Source: " + e.Source); Console.WriteLine("StackTrace: " + e.StackTrace); Console.WriteLine("TargetSite: " + e.TargetSite); string indent = "\t"; Exception ie = e; while(ie.InnerException != null) { ie = ie.InnerException; Console.WriteLine("Inner Exception."); Console.WriteLine(indent + "ExceptionType: " + ie.GetType( ).Name); Console.WriteLine(indent + "HelpLink: " + ie.HelpLink); Console.WriteLine(indent ...
Get C# Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.