Lorsqu'une exception est levée (pendant le débogage dans l'IDE), j'ai la possibilité d' afficher les détails de l'exception:
Mais dans le code si je l'appelle, exception.ToString()
je n'ai pas à voir ces détails utiles:
System.Data.SqlClient.SqlException (0x80131904): Could not find stored procedure 'FetchActiveUsers'.
[...snip stack trace...]
Mais Visual Studio a de la magie là où il peut l'exception de copie dans le presse-papiers:
Qui donne les détails utiles:
System.Data.SqlClient.SqlException was unhandled by user code
Message=Could not find stored procedure 'FetchActiveUsers'.
Source=.Net SqlClient Data Provider
ErrorCode=-2146232060
Class=16
LineNumber=1
Number=2812
Procedure=""
Server=vader
State=62
StackTrace:
[...snip stack trace...]
InnerException:
Eh bien, je veux que!
Quel serait le contenu de:
String ExceptionToString(Exception ex)
{
//todo: Write useful routine
return ex.ToString();
}
qui peut accomplir la même magie. Est-il un .NET fonction de quelque part? N' Exception
ont une méthode secrète quelque part à la convertir en une chaîne de caractères?