Condividi tramite


Eseguire il debug di eccezioni ASP.NET

Il debug delle eccezioni è una parte importante dello sviluppo di un'applicazione ASP.NET affidabile. Informazioni generali su come eseguire il debug delle eccezioni sono disponibili in Gestione delle eccezioni con il debugger.

Per eseguire il debug di eccezioni non gestite ASP.NET, è necessario assicurarsi che il debugger si arresti per tali eccezioni. Il runtime di ASP.NET dispone di un gestore di eccezioni di primo livello. Di conseguenza, per impostazione predefinita il debugger non si interrompe mai in corrispondenza di eccezioni non gestite. Per eseguire un'interruzione nel debugger quando viene generata un'eccezione, è necessario selezionare Interrompi quando viene generata l'impostazione per tale eccezione specifica nella finestra di dialogo Eccezioni .

Se è stato abilitato Just My Code, interrompere quando Thrown non causa l'interruzione immediata del debugger se viene generata un'eccezione in un metodo .NET o in un altro codice di sistema. Invece l'esecuzione continua sino al raggiungimento di codice non di sistema, quindi si interrompe. Di conseguenza, non è necessario esaminare il codice di sistema quando si verifica un'eccezione.

Just My Code offre un'altra opzione che può essere utile: Continua quando non gestito nel codice utente. Se si disabilita questa impostazione per un'eccezione, il debugger interromperà l'esecuzione nel codice utente, ma solo se l'eccezione non viene intercettata e gestita dal codice utente. Questa impostazione nega l'effetto del gestore eccezioni di livello superiore ASP.NET, perché tale gestore si trova nel codice non utente.

Per attivare il debug delle eccezioni ASP.NET con Just My Code

  1. Scegliere Impostazioni eccezioni di Windows>dal menu Debug.

    Verrà visualizzata la finestra di dialogo Eccezioni.

  2. In Eccezioni di Common Language Runtime selezionare la riga per l'eccezione che si vuole interrompere quando viene generata.

  3. Se si desidera disabilitare Continua quando non gestito in Codice utente, fare clic con il pulsante destro del mouse sulla riga e deselezionare l'opzione, se è già selezionata.

    Per usare l'impostazione Utente non gestito , è necessario abilitare Just My Code .

Procedure ottimali per la gestione delle eccezioni ASP.NET

  • Collocare blocchi try ... catch attorno al codice che può generare eccezioni anticipabili e gestibili. Se, ad esempio, l'applicazione effettua chiamate a un Servizio Web XML o direttamente a SQL Server, il codice dovrebbe trovarsi in blocchi try ... catch perché è possibile che si verifichino numerose eccezioni.