Concetti relativi al debug remoto

Completato

Visual Studio offre potenti funzionalità e strumenti di debug remoto per risolvere i problemi relativi alle applicazioni in esecuzione in altri computer all'esterno dell'ambiente di sviluppo. La maggior parte degli sviluppatori ha familiarità con gli strumenti di debug di Visual Studio durante lo sviluppo in locale, ma potrebbe non realizzare che un'esperienza simile è disponibile per le app in esecuzione in altri ambienti. Ecco alcuni scenari comuni per il debug remoto:

  • Connettersi ed eseguire il debug di un'app ospitata in uno dei numerosi servizi di Azure, ad esempio istanze del Servizio app o macchine virtuali
  • Eseguire il debug di un'app ospitata da un server locale in IIS
  • Eseguire il debug di un'app in esecuzione in un altro computer di sviluppo per facilitare la risoluzione dei problemi
  • Collegarsi a un processo lato client, ad esempio un Web browser, per eseguire il debug del codice che viene eseguito all'esterno del contesto dell'app locale
  • Eseguire il debug di un'applicazione in esecuzione in un ambiente in contenitori separato dall'ambiente di sviluppo

Negli esercizi successivi, si esaminerà il primo scenario di questo elenco per eseguire il debug di un'app in esecuzione in Servizio app di Azure usando Visual Studio. Servizio app è uno dei servizi di Azure più usati e un'opzione potente per ospitare applicazioni .NET.

Informazioni sugli strumenti di debug remoto

Il debug remoto include vari strumenti e funzionalità di Visual Studio. Quando si esegue il debug remoto di applicazioni distribuite in altri server o macchine virtuali, potrebbe essere necessario installare gli Strumenti remoti di Visual Studio.

Nell'esercizio successivo si eseguirà il debug di un'app ospitata in Servizio app di Azure, quindi non è necessario installare gli strumenti. In questo scenario, molti di questi tipi di configurazioni sono gestiti automaticamente. È possibile usare la funzionalità Collega a processo per connettersi direttamente a un processo di Servizio app. Supponendo che siano stati caricati i simboli di debug corretti e il codice sorgente, è possibile eseguire il debug dell'applicazione come se fosse in esecuzione localmente nel computer.

Panoramica dei file di simboli

Visual Studio richiede file di simboli per il codice sorgente per eseguire il debug di un'applicazione in esecuzione in altri computer o ambienti. I file di simboli vengono creati nella directory bin nell'ambito del processo di compilazione e terminano con un'estensione .pdb. In termini semplificati, i file di simboli forniscono un ponte di istruzioni tra il codice compilato e il codice sorgente. Il debugger di Visual Studio usa i file di simboli per esaminare il codice sorgente riga per riga durante l'esecuzione della versione compilata. Durante l’esecuzione e quando si esegue il debug in locale, Visual Studio è in grado di individuare automaticamente i file di simboli generati grazie ai percorsi di ricerca predefiniti per i file .pdb.

Diagramma del processo di compilazione e dei simboli.

Quando un'applicazione viene compilata e distribuita in Azure, Visual Studio non dispone automaticamente dell'accesso ai file di simboli necessari, quindi è necessario fornirne una copia locale durante il debug. Il codice sorgente e i file di simboli locali devono corrispondere esattamente al codice distribuito in modo che le istruzioni vengano allineate correttamente.