Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Creare una mappa del codice per tracciare visivamente lo stack di chiamate durante il debug. È possibile creare note sulla mappa per tenere traccia delle operazioni eseguite dal codice in modo da potersi concentrare sulla ricerca di bug.
Sono necessari gli elementi seguenti:
Codice di cui è possibile eseguire il debug, ad esempio Visual C#, Visual Basic, C++, JavaScript o X++
See:
-
Per informazioni dettagliate sui comandi e sulle azioni che è possibile usare quando si usano le mappe codice, vedere Esplorare e ridisporre le mappe del codice.
Mappare lo stack di chiamate
Avviare il debug. (Tastiera: F5)
Dopo che l'app entra in modalità di interruzione o si entra in una funzione, scegliere Mappa codice. (Tastiera: CTRL + Shift + `)
Lo stack di chiamate corrente viene visualizzato in arancione su una nuova mappa del codice:
La mappa verrà aggiornata automaticamente durante il debug. Vedere Aggiornare la mappa con lo stack di chiamate successivo.
Prendere note sul codice
Aggiungere commenti per tenere traccia di ciò che accade nel codice. Per aggiungere una nuova riga in un commento, premere MAIUSC + Invio.
Aggiornare la mappa con lo stack di chiamate successivo
Esegui l'app fino al punto di interruzione successivo o entra in una funzione. La mappa aggiunge un nuovo stack di chiamate.
Aggiungere codice correlato alla mappa
Ora hai una mappa, cosa succede? Se si usa C# o Visual Basic, aggiungere elementi, ad esempio campi, proprietà e altri metodi, per tenere traccia di ciò che accade nel codice.
Fare doppio clic su un metodo per visualizzarne la definizione di codice oppure usare il menu di scelta rapida per il metodo . (Tastiera: selezionare il metodo sulla mappa e premere F12)
Aggiungere gli elementi da tenere traccia sulla mappa.
Annotazioni
Per impostazione predefinita, l'aggiunta di elementi alla mappa aggiunge anche i nodi del gruppo padre, ad esempio la classe, lo spazio dei nomi e l'assembly. Sebbene ciò sia utile, è possibile mantenere la mappa semplice disattivando questa funzionalità usando il pulsante Includi genitori sulla barra degli strumenti della mappa o premendo CTRL quando si aggiungono elementi.
Qui è possibile vedere facilmente quali metodi usano gli stessi campi. Gli elementi aggiunti più di recente vengono visualizzati in verde.
Continuare a compilare la mappa per visualizzare altro codice.
Trovare bug usando la mappa
La visualizzazione del codice consente di trovare i bug più velocemente. Si supponga, ad esempio, di analizzare un bug in un programma di disegno. Quando si disegna una linea e si tenta di annullarlo, non succede nulla finché non si disegna un'altra linea.
È quindi possibile impostare i punti di interruzione nei clearmetodi , undoe Repaint , avviare il debug e compilare una mappa simile alla seguente:
Notate che tutti i gesti dell'utente sulla mappa chiamano Repaint, ad eccezione di undo. Questo potrebbe spiegare perché undo non funziona immediatamente.
Dopo aver corretto il bug e aver continuato a eseguire il programma, la mappa aggiunge la nuova chiamata da undo a Repaint:
Domande e risposte
Non tutte le chiamate vengono visualizzate sulla mappa. Why?
Per impostazione predefinita, sulla mappa viene visualizzato solo il codice personalizzato. Per visualizzare il codice esterno, attivarlo nella finestra Stack di chiamate :
o disattiva Abilita Just My Code nelle opzioni di debug di Visual Studio:
La modifica della mappa influisce sul codice?
La modifica della mappa non influisce sul codice in alcun modo. È possibile rinominare, spostare o rimuovere elementi sulla mappa.
Cosa significa questo messaggio: "Il diagramma può essere basato su una versione precedente del codice"?
Il codice potrebbe essere stato modificato dopo l'ultimo aggiornamento della mappa. Ad esempio, una chiamata sulla mappa potrebbe non esistere più nel codice. Chiudere il messaggio, quindi provare a ricompilare la soluzione prima di aggiornare nuovamente la mappa.
Come si controlla il layout della mappa?
Aprire il menu Layout sulla barra degli strumenti della mappa:
Modificare il layout predefinito.
Per interrompere la riorganizzazione automatica della mappa, disattivare Layout automatico durante il debug.
Per riorganizzare la mappa il meno possibile quando si aggiungono elementi, disattivare Il layout incrementale.
Posso condividere la mappa con altri utenti?
È possibile esportare la mappa, inviarla ad altri utenti se si dispone di Microsoft Outlook o salvarla nella soluzione in modo da poterla archiviare nel controllo del codice sorgente.
Come si impedisce alla mappa di aggiungere automaticamente nuovi stack di chiamate?
Scegli
sulla barra degli strumenti della mappa. Per aggiungere manualmente lo stack di chiamate corrente alla mappa, premere CTRL + MAIUSC + `.La mappa continuerà a evidenziare gli stack di chiamate esistenti sulla mappa durante il debug.
Cosa significano le icone e le frecce degli elementi?
Per ottenere ulteriori informazioni su un elemento, spostare il puntatore del mouse su di esso e consultare la descrizione comando dell'elemento. È anche possibile esaminare legenda per scoprire cosa significa ogni icona.
See: