2011-01-09 13 views
1

Ich habe eine große Anwendung mit nur einem try..catch auf der äußersten Ebene gegeben. Diese Anwendung löst auch Ausnahmen die ganze Zeit, und ist schlecht dokumentiert.Verfolgen der Benutzerfunktion, die die Ausnahme ausgelöst

Gibt es ein Muster, das ich implementieren kann, wird mir sagen, welche Benutzermethode aufgerufen wird, die Ausnahme ausgelöst wird, und auch die Anzahl der Ausnahmen?

Ich denke an ein Wörterbuch mit Reflektion, um die benötigten Informationen zu erhalten, aber ich bin mir nicht sicher, ob das funktioniert. Was denken Sie?

Antwort

0

Exception.StackTrace gibt Ihnen die gewünschten Informationen (mehr in einem Debug-Build).

Wenn Sie im Visual Studio-Debugger ausgeführt werden können, aktivieren Sie "Break on Exception", und Sie werden in den Debugger auf der "werfen" -Website ablegen.

0

Exception.ToString() sollte Ihnen die Stack-Trace und alle erforderlichen Informationen geben. Verwenden Sie dies, um die Ausnahmen zu protokollieren, und Sie können die Quellen finden.

Dies ist so lange wie es keine anderen try...catch Blöcke in der Anwendung gibt.

Verwandte Themen