Debug dei NetLogic

Introduzione

Questo modulo descrive alcune procedure di base per individuare, approfondire e correggere eventuali problemi nel codice dei NetLogic tramite Microsoft Visual Studio o Visual Studio Code in locale. Per il debug remoto vedere Debug remoto di NetLogic di runtime.

Nota

le schermate di esempio sono riferite a Visual Studio, impostato in lingua inglese.

Gli errori dei NetLogic sono segnalati a runtime nel pannello dei log di Q Studio. In particolare, gli errori dei NetLogic di runtime sono riportati nella scheda del target su cui si esegue l’applicazione (per esempio Emulator Output), gli errori dei NetLogic di design time sono riportati nella scheda Q Studio Output.

Per installare Visual Studio o Visual Studio Code, o per riferimenti su tutte le relative funzionalità di debug, fare riferimento al sito web di Microsoft.

Prerequisiti

Per il debug di NetLogic di runtime è necessario che il progetto sia in esecuzione. Tipicamente, per scopi di debug il progetto si esegue sul target Emulator.

Per il debug tramite Visual Studio Code, è necessario installare l’estensione C# di Microsoft (disponibile a questo link). Si consiglia inoltre di installare l’estensione vscode-solution-explorer (disponibile a questo link) per navigare nella cartella di progetto in modo simile a Visual Studio.

Macro procedura

  1. Impostare il debug.

  2. Avviare il debug.

  3. Modificare il codice dopo il debug.

  4. Avviare il debug dopo una modifica al codice.

Impostare il debug

  1. Fare clic su image1: si apre il progetto C# in Visual Studio o Visual Studio Code, a seconda dell’editor predefinito (vedere Impostare l’editor di codice predefinito).

  2. (Solo per debug di NetLogic di runtime) In Q Studio fare clic su image2 per compilare ed eseguire la Q Application.

  3. Impostare il debug:

    Se si usa…

    Allora…

    Visual Studio

    1. Nel menu Debug fare clic su Attach to Process: compare una finestra che mostra tutti i processi in esecuzione sulla macchina.

    2. In Attach to fare clic su Select, selezionare Managed (v4.6, v4.5, v4.0) e fare clic su OK.

    3. In Available Process selezionare il processo QRuntime.exe per il debug di NetLogic di runtime oppure QStudio.exe per il debug di NetLogic di design time.

    4. Fare clic su Attach: si entra in modalità debug e la barra inferiore diventa arancione.

    5. Inserire uno o più punti di interruzione (vedere Usare i punti di interruzione), per indicare le righe del codice in cui l’esecuzione si ferma per permettere all’utente di verificarne lo stato, il contenuto delle variabili ecc.

    Visual Studio Code

    1. Aprire la vista Run (CTRL+MAIUSC+D).

    2. Nel menu a discesa RUN selezionare Attach to QRuntime per il debug di NetLogic di runtime oppure Attach to QStudio per il debug di NetLogic di design time.

Usare i punti di interruzione

Per impostare un punto di interruzione, fare clic sulla colonna a sinistra del numero di riga: compare un indicatore.

Per rimuovere un punto di interruzione, fare clic sull’indicatore.

Di seguito un esempio di Visual Studio:

../../_images/4811537509cdbd1f71075ab04c0bdcc6df0ce3ac.png

Nota

i punti di interruzione non possono essere impostati su righe vuote

A tempo di esecuzione, l’indicatore segnala quando l’esecuzione è ferma sulla riga. Di seguito un esempio di Visual Studio:

../../_images/b5d26fa40c787054025828bb1bedc28ff3a46117.png

Avviare il debug

  1. In Visual Studio o Visual Studio Code, in modalità debug aprire il/i NetLogic da verificare e, a seconda che si tratti di NetLogic di runtime o design time, fare come di seguito:

    Se il NetLogic è…

    Allora…

    di runtime

    premere F5: viene avviata l’esecuzione del codice, che si ferma al primo punto di interruzione.

    di design time

    in Q Studio, fare clic con il pulsante destro del mouse sul NetLogic desiderato, poi fare clic sul metodo da eseguire: viene avviata l’esecuzione del codice, che si ferma al primo punto di interruzione.

  2. Nella scheda Locals in Visual Studio, o nella scheda VARIABLES in Visual Studio Code, sono elencati gli oggetti e le variabili locali del contesto di esecuzione. Per ogni variabile sono riportati i valori correnti e il loro tipo. Nell’esempio, gli elementi mostrati nella scheda Locals sono riferiti al contesto del metodo AddTwoNumbers().

    ../../_images/56890aa50fc4a6963d22eef023cc4683df3cd089.png

    È possibile espandere gli elementi che contengono proprietà, per visualizzarne valori e tipi di dati/oggetti. Di seguito un esempio:

    ../../_images/b24d764cd4e9b22cf3082d9d2cf2c8a07c43e621.png
  3. Per proseguire l’esecuzione del codice della riga successiva premere F10.

  4. Per proseguire l’esecuzione del codice fino al successivo punto di interruzione premere F5.

  5. Ripetere i passi 3 e 4 i fino al completamento del debug.

Modificare il codice dopo il debug

  1. Interrompere il debug:

    Se il/i NetLogic sono…

    Allora…

    di runtime

    in Q Studio fare clic su image4 per fermare l’esecuzione del progetto e per interrompere il debug.

    di design time

    in Visual Studio o Visual Studio Code premere MAIUSC+F5 per interrompere il debug.

  2. Modificare il codice e salvare i file .cs modificati: Q Studio ricompila automaticamente la soluzione .NET.

Avviare il debug dopo una modifica al codice

  1. (Solo per debug di NetLogic di runtime o se si creano nuovi tipi custom nel progetto) In Q Studio fare clic su image5 per compilare ed eseguire la Q Application.

  2. A seconda che si usi Visual Studio o Visual Studio Code fare come di seguito:

    Se si usa…

    Allora…

    Visual Studio

    Nel menu Debug fare clic su Reattach to Process: viene selezionato automaticamente il processo selezionato nella precedente sessione di debug e si entra in modalità di debug.

    Importante

    se tra il precedente debug e il successivo è stato chiuso Visual Studio, è necessario fare clic su Attach to Process e reimpostare il collegamento (vedere Impostare il debug).

    Visual Studio Code

    1. Aprire la vista Run (CTRL+MAIUSC+D).

    2. Nel menu a discesa RUN selezionare Attach to QRuntime per il debug di NetLogic di runtime oppure Attach to QStudio per il debug di NetLogic di design time.

    Importante

    se nei debug successivi al primo Visual Studio Code ignora i punti di interruzione, riavviare Visual Studio Code e ripetere questa procedura.

  3. Aprire il NetLogic da verificare e, a seconda che si tratti di NetLogic di runtime o design time, fare come di seguito:

    Se il NetLogic è…

    Allora…

    di runtime

    premere F5: viene avviata l’esecuzione del codice, che si ferma al primo punto di interruzione.

    di design time

    in Q Studio, fare clic con il pulsante destro del mouse sul NetLogic desiderato, poi fare clic sul metodo da eseguire: viene avviata l’esecuzione del codice, che si ferma al primo punto di interruzione.