将异常记录到字符串的最佳方法是什么

Jas*_*ver 5 .net c#

任何人都有一个很好的方法将C#中的Exception输出到一个处理内部异常的字符串,等等?我相信每个开发者都对此有自己的意见,但我找不到我的旧版本,并想看看那里有哪些更好的.

这里有一个没有内部异常递归的例子:

var Message = String.Format("Exception Message: \n{0}\n\nStackTrace: \n{1}", ex.Message, ex.StackTrace);
Run Code Online (Sandbox Code Playgroud)

Mic*_*ber 17

简单的方法ToString是最好的:

ex.ToString();
Run Code Online (Sandbox Code Playgroud)

  • +1,这对于新手来说并不明显,因为大多数其他框架类只是在 ToString() 中返回类型名称,但是 `Exception.ToString()` 具有您需要的所有信息。 (2认同)
  • +1,除了马特的评论之外,还应该注意到*大多数*(但不幸的是不是全部)异常将有关它们具有的辅助属性的信息写入 ToString() 输出。如果您只使用“Message”和“StackTrace”,您通常会错过这些属性。 (2认同)