8

Ich debugge eine asp.net-Anwendung auf iisexpress.exe, ich habe Visual Studio 2013, um benutzerdefinierte Exceptions durch die Ausnahme Einstellungen Fenster aber es zu brechen konfiguriert bricht immer noch nicht ab, wenn eine Ausnahme ausgelöst wird. Wenn ich die Ausführung pausiere, sehe ich im Intellitrace-Fenster, dass viele Ausnahmen ausgelöst wurden, aber Visual Studio nicht unterbrochen wurde.Visual Studio 2013 "Break on behandelt Exceptions" funktioniert nicht, nicht zu brechen

+0

Funktioniert die Einstellung von Haltepunkten? Können Sie sehen, dass das Ausgabefenster die richtigen Versionen Ihrer Assemblys geladen hat? –

+0

Es gibt keine "Benutzer gehandhabte" Option. Es gibt 'Thrown' und' User-unhandled', beide müssen für das gewünschte Verhalten ausgewählt werden. Haben Sie beide Optionen ausgewählt? –

+0

@MatthewWatson - ja, das habe ich gemeint. –

Antwort

10

Ok, es scheint es wegen der unter

ausgewählt Optionen-> Debugging-> Allgemein

Ich weiß nicht, warum, aber "Just My-Code aktivieren" Optionen war von Standardmäßig ist es aktiviert. Irgendwelche Ideen? Soll ich es aktiviert/deaktiviert lassen?

8

@Navad, wie der Debugger funktioniert, wenn Sie "Just My Code" aktiviert haben, bricht der Debugger nur bei Ausnahmen der ersten Chance (ausgelöst, aber behandelt) im Benutzercode. Der Debugger definiert Benutzercode als "Debug" kompilierten Code, und Sie haben Symboldateien (.pdb) für, oder wenn die Assembly von einem Projekt erstellt wird, das Teil Ihrer Lösung ist. Im Allgemeinen ist Just My Code das, was Sie wahrscheinlich möchten, als ob Sie es deaktivieren und die ersten Ausnahmen aktivieren, die Sie bei Ausnahmen, die auch in Framework-Code auftreten, die Sie nicht kontrollieren, unterbrechen werden. Wenn Sie die Exception im Benutzercode nicht abfangen, wird der Debugger bei der Aktivierung unterbrochen und behandelt sie so, als ob sie nicht behandelt würde. Wenn Sie jedoch Just My Code deaktivieren, werden Sie die Ausnahme nur dann unterbrechen, wenn sie wirklich nicht behandelt wird. Zum Beispiel werden einige Frameworks Ausnahmen abfangen, so dass der Debugger nur dann bricht, wenn Sie ihn auf "geworfen" setzen, da keine Ausnahmen in Ihrem Code tatsächlich unbehandelt sind, sondern nur "Benutzer unbehandelt".

Verwandte Themen