Wie springt man zurück zu der Codezeile, die im Visual Studio 2010-Debugger eine Ausnahme ausgelöst hat?

9

Mit dem Visual Studio 2010-Debugger bin ich vertraut mit der Verwendung des Call-Stack-Fensters, um zu sehen, woher die aktuell ausgeführte Funktion aufgerufen wurde.

Ich arbeite mit einigen Anwendungen, die ziemlich große try Blöcke haben. Angenommen, dass ich die Ausführung des Codes an einem Unterbrechungspunkt im Block catch pausiere, was ist der einfachste Weg zu sagen, aus welcher Zeile im try-Block die Ausnahme ausgelöst wurde?

Ich weiß, dass die "Stack Trace" Details wie die Zeilennummer enthält, aber gibt es einen einfacheren Weg, wie eine Tastenkombination, um zurück zu der Codezeile zu navigieren, wo die Ausnahme ausgelöst wurde?

>

Update : Ich möchte betonen, dass ich den Ausführungspunkt nicht zurück in den try -Block verschieben möchte; Ich möchte einfach eine einfachere Art zu wissen, aus welcher Zeile die Ausnahme ausgelöst wurde.

    
Daniel Allen Langdon 21.02.2013, 19:48
quelle

2 Antworten

12

Wenn Sie "DEBUG", "Exceptions ..." wählen und dann "Thrown" gegen "Common Language Runtime Exceptions" auswählen.

Wenn der Code auf eine Ausnahme stößt, wird er in der Zeile mit dem Fehler beendet.

    
DaveShaw 21.02.2013 20:33
quelle
3

Eine Lösung könnte sein, dass VS bei allen Ausnahmen bricht:

Wählen Sie Exceptions im Menü Debug und aktivieren Sie das Feld "Geworfen" für Common Language Runtime Exceptions .

Nun sollte VS aufhören und die Zeile markieren, wo die Ausnahme ausgelöst wird. Sie können wie üblich weitermachen , indem Sie auf die Wiedergabetaste oder F5 klicken.

Der Nachteil davon ist, dass alle Ausnahmen auf die gleiche Weise abgefangen werden, was ärgerlich sein kann, wenn Sie viele davon haben.

    
Kjartan 21.02.2013 20:11
quelle