L'obtention de l'objet de l'Exception dans un try..catch d'inclure la totalité des stacktrace, pour l'instant, ses tronquée

peut aider quelqu'un?

Je suis en train d'essayer d'obtenir le plein stacktrace quand, dans une prise de try..catch. Actuellement, sa tronquée pour inclure uniquement la méthode actuelle où est l'erreur....

Laissez-moi vous expliquer.. Actuellement j'ai mon stacktrace inclut la méthode de la "Troisième" où l'erreur se produit, mais la Première et la Deuxième n'est pas inclus, je crois que c'est par la conception.

private void First()
{
    this.Second();
}

private void Second()
{
    this.Third();
}

private void Third()
{
    try
    {
        throw new SystemException("ERROR HERE!");
    }
    catch (Exception ex)
    {
        //I WILL LOG THE EXCEPTION object "EX" here ! but ex.StackTrace is truncated!
    }
}

J'ai vu un certain nombre de tours pour obtenir le plein stacktrace dans une CHAÎNE de caractères mais le problème, c'est mon journalisation attend un objet de type "Exception", mais ma variable (ex) qui a mon exception est valable, mais la propriété StackTrace est tronqué.

Est-il de toute façon je peux recevoir un PLEIN exception avec un PLEIN stacktrace je suis donc en mesure de toujours envoyer le long de mon "EX", mais cette fois, il aura une UNtruncated stacktrace.

UnhandledErrror événement semble fonctionner comme si j'arriver ici, l'Exception a une trace de la pile et est entièrement rempli ...

J'ai vraiment apprécié tous les commentaires..

Mais vous attraper au niveau 3. Si vous le prenez sur le dessus, vous obtenez une pile complète..?
euh, ex.ToString() devrait vous donner...

OriginalL'auteur Martin | 2011-05-23