异常的ToString()方法

mis*_*hap 3 c# resharper tostring

我在某些代码中找到了以下代码:

catch (Exception exception)
{
    Console.WriteLine(exception.ToString());
}
Run Code Online (Sandbox Code Playgroud)

Resharper正在使ToString()通话变得灰暗,这一直是一个很好的建议.没有它,这个C#代码如何工作?会ToString()隐含调用吗?

key*_*rdP 7

Console.WriteLine有一个带对象的重载.此对象的ToString方法在内部调用,因此您无需ToString首先添加.


and*_*axo 5

如果在字符串中使用异常...例如,"something" + exception.ToString()或者String.Format("... {0}", exception)是,ToString则在不必显式调用它的情况下调用.

并且......当你更新你的例子时,将调用Console.WriteLine()任何对象值ToString.这是文档,尽可能详细.