Visual Studio 2013 "break on behandelt Ausnahmen" funktioniert nicht, nicht brechen
Ich bin Debuggen asp.net Anwendung auf iisexpress.exe ich habe konfiguriert visual studio 2013 zu brechen, die auf Benutzer-behandelte Ausnahmen über das exception-Einstellungen-Fenster, aber es immer noch nicht brechen, wenn eine Ausnahme geworfen wird.
Wenn ich die Ausführung anhalten können, sehe ich auf der Intellitrace-Fenster, dass eine Menge der Ausnahmen, die geworfen wurden, aber visual studio hat nicht brechen.
- Tut das setzen von breakpoints arbeiten? Sehen Sie die
Output Window
geladen wurde, die korrekten Versionen von Assemblys? - Es gibt keine "user-behandelt" - option. Es gibt
Thrown
undUser-unhandled
, beides muss aktiviert sein, damit Sie die Verhalten, die Sie wollen. Haben Sie beide diese Optionen? - ja, das ist es, was ich meinte.
- ja, so sieht es aus. der code läuft und funktioniert, aber visual studio ist nicht pausieren, Wann und Ausnahme wird geworfen und gefangen. es ist jedoch anhalten auf nicht behandelte Ausnahmen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ok, es scheint, dass es war, weil Sie die "Enable Just My Code" - Optionen ausgewählt wurde, unter
Ich weiß nicht warum, aber es ist standardmäßig aktiviert. Irgendwelche Ideen? Sollte ich lassen Sie es markiert/nicht markiert?
@Navad, wie der debugger funktioniert, ist, dass, wenn du "Nur Mein Code" aktiviert, wird der debugger nur brechen auf Erste-Chance-Ausnahmen (geworfen, aber behandelt werden) in user-code. Wo der debugger definiert Benutzer-code zu code, der kompiliert wird, "Debug" und Sie haben die symbol-Dateien (.pdb ' s), oder, wenn die Versammlung gebaut ist, von einem Projekt ist Teil der Lösung. Im Allgemeinen "Nur Mein Code" ist das, was Sie wahrscheinlich wollen, als wenn Sie Sie deaktivieren, und schalten Sie auf erste-chance-Ausnahmen brechen Sie auf, alle Ausnahmen, die auftreten, auch im framework-code, die du nicht kontrollierst. Zusätzlich, wenn es aktiviert ist, wenn Sie nicht fangen die Exception im user-code, der debugger wird brechen und es zu behandeln, als wenn es war nicht behandelte. Allerdings, wenn Sie deaktivieren "Nur Mein Code", Sie brechen auf die Ausnahme nur, wenn es wirklich nicht behandelte. Zum Beispiel, einige der Rahmenbedingungen für exceptions fangen, damit der debugger wird nur brechen, wenn Sie es ausschalten geworfen, weil es keine Ausnahmen in Ihrem code eigentlich gehen nicht behandelte, Sie sind nur "User Unhandled".