I have code that is logging Exception.Message. However, I read an article which states that it’s better to use Exception.ToString(). With the latter, you retain more crucial information about the error.
Is this true, and is it safe to go ahead and replace all code logging Exception.Message?
I’m also using an XML based layout for log4net. Is it possible that Exception.ToString() may contain invalid XML characters, which may cause issues?
Exception.Messagecontains only the message (doh) associated with the exception. Example:The
Exception.ToString()method will give a much more verbose output, containing the exception type, the message (from before), a stack trace, and all of these things again for nested/inner exceptions. More precisely, the method returns the following: