Condividi tramite


Cenni preliminari sul debug ASP.NET

Aggiornamento: novembre 2007

Il codice dell'applicazione può contenere errori di vario tipo. La maggior parte degli errori di sintassi vengono individuati durante la compilazione. Altri errori richiedono tuttavia il debug del codice, ossia un'analisi del codice durante l'esecuzione che consente di verificare la correttezza del percorso e dei dati di esecuzione.

In questo argomento vengono fornite informazioni sull'utilizzo del debugger in Windows Software Development Kit (SDK) per individuare più facilmente gli errori nelle pagine Web ASP.NET.

Informazioni di supporto

Il codice dell'applicazione può contenere errori di vario tipo. La maggior parte degli errori di sintassi vengono individuati durante la compilazione. Altri errori richiedono tuttavia il debug del codice, ossia un'analisi del codice durante l'esecuzione che consente di verificare la correttezza del percorso e dei dati di esecuzione. Per ulteriori informazioni, vedere Esecuzione del debug e creazione del profilo delle applicazioni.

In Windows Software Development Kit (SDK) è incluso uno strumento denominato Visual Debugger che consente di esaminare un'applicazione in fase di esecuzione. Lo strumento si trova in %ProgramFiles%\Microsoft Visual Studio 8\SDK\v2.0\GuiDebug\DbgCLR.exe. Mediante questo debugger è possibile seguire con precisione l'esecuzione dell'applicazione, controllando ogni istruzione in esecuzione e visualizzando i dati di ogni variabile. Per utilizzare Visual Debugger, è necessario aprirlo e quindi collegarlo al processo che esegue le pagine dell'applicazione ASP.NET. In Internet Information Services (IIS) 5.0 e 5.1 e in IIS 6.0 in esecuzione in modalità applicativa IIS 5.0, il debugger deve essere collegato al processo di lavoro ASP.NET (Aspnet_wp.exe). In IIS 6.0 in esecuzione in modalità di isolamento del processo di lavoro, il debugger deve essere collegato al processo del pool di thread (W3wp.exe). Quando il debugger è collegato a un processo, è possibile seguire l'esecuzione del processo poiché il debugger mappa le istruzioni in esecuzione nel processo al codice originale e visualizza ogni riga di codice in fase di esecuzione.

Visual Debugger

Visual Debugger consente di esaminare il codice in esecuzione e include funzionalità che permettono di eseguire il debug delle applicazioni, incluse quelle indicate di seguito.

  • **Punti di interruzione   **Il debugger arresta l'esecuzione dell'applicazione in corrispondenza dei punti di interruzione inseriti, consentendo la visualizzazione dello stato dei dati correnti dell'applicazione, e quindi permette di eseguire le istruzione successive una alla volta. Per informazioni, vedere Nozioni fondamentali di debug: punti di interruzione.

  • Esecuzione di un'istruzione del codice alla volta   Dopo l'arresto in corrispondenza di un punto di interruzione, è possibile eseguire il codice una riga alla volta. Visual Debugger include diverse funzionalità per eseguire le istruzioni del codice, ad esempio gli iteratori che consentono di specificare quante volte viene eseguito un ciclo prima di un nuovo arresto. Per ulteriori informazioni, vedere Cenni preliminari sull'esecuzione di codice.

  • Visualizzazione dei dati   Visual Debugger offre differenti opzioni per la visualizzazione e la traccia dei dati durante l'esecuzione dell'applicazione. Il debugger consente di modificare i dati quando l'applicazione viene arrestata in modalità di interruzione e quindi di riprendere l'esecuzione dell'applicazione con i dati modificati. Per ulteriori informazioni, vedere Visualizzazione di dati nel debugger.

Nota:

La funzionalità Modifica e continuazione di Visual Studio 2005 non è disponibile per le applicazioni Web.

Per ulteriori informazioni, vedere Utilizzo del debugger con pagine Web.

Configurazione delle applicazioni Web ASP.NET per il debug

Per consentire il debug di un'applicazione Web ASP.NET, è necessario compilare l'applicazione in una build di debug che include le informazioni necessarie per il debugger per eseguire le istruzioni del codice e visualizzare il contenuto delle variabili. Configurare l'applicazione Web per le build di debug nella sezione Compilation del file Web.config dell'applicazione. Per ulteriori informazioni, vedere Elemento compilation (schema delle impostazioni ASP.NET). In alternativa, per eseguire il debug solo di alcune pagine, è possibile aggiungere debug=true alla direttiva @ Page nelle pagine desiderate. Per ulteriori informazioni, vedere Procedura: attivare il debug per applicazioni ASP.NET.

Nota:

Un'applicazione compilata in una build di debug viene eseguita molto più lentamente rispetto alla stessa applicazione compilata in una build finale. Assicurarsi che la modalità debug sia disattivata prima di distribuire l'applicazione. Inoltre, quando si verifica un errore in modalità debug, vengono esposte più informazioni nello stack, con conseguenti potenziali rischi di sicurezza.

Debug locale e remoto

Se si utilizza un server Web locale, ad esempio IIS, è possibile eseguire il debug delle applicazioni in esecuzione sul computer locale in modo da poter visualizzare le pagine in un browser.

Se non è possibile eseguire una pagina localmente, in quanto non è possibile utilizzare un server Web o perché l'applicazione non è disponibile localmente, è possibile eseguire il debug di un'applicazione in esecuzione su un altro server. Per eseguire il debug in remoto, è necessario installare i componenti per il debug remoto di Visual Studio sul server remoto. Per ulteriori informazioni, vedere Procedura: impostare il debug remoto.

Autorizzazioni per il debug

Il debug di un processo richiede più privilegi rispetto all'esecuzione del processo. Oltre a configurare l'applicazione per il debug, è quindi necessario anche disporre delle autorizzazioni appropriate per il processo da sottoporre al debug. Gli utenti dispongono dell'autorizzazione per il debug dei processi eseguiti con la propria identità utente locale, ma non possono eseguire il debug di altri processi. Gli amministratori possono eseguire il debug di qualsiasi processo.

Per eseguire il debug su un server remoto è necessario disporre dei privilegi di amministratore per il computer dove viene eseguito il processo da sottoporre al debug. Per ulteriori informazioni, vedere Procedura: eseguire il debug di applicazioni Web su un server remoto.

Debug di script sul lato client

Oltre al debug di applicazioni sul lato server, Visual Debugger consente di eseguire il debug di script sul lato client scritti in ECMAScript (JavaScript) o VBScript. Il debug di script client può essere particolarmente utile quando i controlli server Web utilizzano script client.

Vedere anche

Attività

Procedura: eseguire il debug di applicazioni Web su un server remoto

Procedura: attivare il debug per applicazioni ASP.NET

Procedura: eseguire il debug di applicazioni e servizi Web

Concetti

Nozioni fondamentali di debug: punti di interruzione

Riferimenti

Novità del debugger di Visual Studio

Altre risorse

Debug di applicazioni ASP.NET e AJAX