Par exemple, à un endroit...
//---------------a
try
{
// some network call
}
catch(WebException we)
{
throw new MyCustomException("some message ....", we);
}
...et dans un autre endroit...
//--------------b
try
{
// invoke code above
}
catch(MyCustomException we)
{
Debug.Writeline(we.stacktrace); // <----------------
}
Le suivi de pile que j'imprime ne commence que de a à b, il n'inclut pas la trace interne de la WebException.
Comment puis-je imprimer toutes les traces de la pile ???
3 votes
Notez que la trace de la pile de la WebException d'origine ne sera pas imprimée parce que vous avez lancé une nouvelle exception au lieu de relancer la WebException. Utilisez
throw;
à la place dethrow new MyCustomException(...)
si vous voulez préserver (et sortir) la pile d'exceptions originale.