Condividi tramite


Esempio di applicazione per le finestre di debug

Aggiornamento: novembre 2007

In questo esempio viene illustrata una funzionalità introdotta in Microsoft Visual Studio 2005, che consente di modificare la visualizzazione di una classe nelle finestre di debug. Mediante l'applicazione di nuovi attributi, ad esempio DebuggerDisplayAttribute, a una classe e ai relativi membri, è possibile controllare il modo in cui vengono visualizzate le colonne relative al valore, al tipo e al nome della classe nella finestra di debug Variabili locali ed è possibile specificare se un determinato valore deve essere visibile, nascosto o visualizzato in modo espanso. Questo metodo è disponibile solo in Microsoft Visual C# 2005.

Per informazioni sull'utilizzo degli esempi, vedere i seguenti argomenti:

In questo esempio sono inclusi sia file sorgente relativi alle tre classi che contengono gli attributi del debugger che i file in cui non sono presenti, come viene illustrato nella tabella riportata di seguito.

File con attributi del debugger

File senza attributi del debugger

DebugAddress.cs

NonDebugAddress.cs

DebugCustomer.cs

NonDebugCustomer.cs

DebugCustomerName.cs

NonDebugCustomerName.cs

Il file DebuggerViewsExample.cs contiene il punto di ingresso dell'applicazione console e viene utilizzato da entrambi i gruppi di file. Rimuovere il commento dal codice nelle versioni di debug (DebugAddress.cs, DebugCustomer.cs e DebugCustomerName.cs) per eseguire l'esempio.

Download sample

Per compilare l'esempio utilizzando il prompt dei comandi

  1. Aprire una finestra del prompt dei comandi, quindi spostarsi nella sottodirectory \CS della directory DebuggerViewsCS. Per informazioni sulle impostazioni necessarie e sul prompt dei comandi dell'SDK, vedere Procedura: definire impostazioni di esempio.

  2. Digitare msbuild DebuggerViewsCS.sln dalla riga di comando.

    Nota:

    In questo esempio vengono illustrate funzionalità di Visual Studio. Per visualizzare l'output dell'esempio, è necessario avviarlo ed eseguirlo nell'ambiente di debug di Visual Studio.

Per compilare l'esempio utilizzando Visual Studio

  1. Aprire Esplora risorse, quindi spostarsi nella sottodirectory \CS della directory DebuggerViewsCS.

  2. Fare doppio clic su DebuggerViewsCS.sln per aprire il file in Visual Studio 2005.

  3. Scegliere Compila soluzione dal menu Compila.

Per eseguire l’esempio

  1. Scegliere Esplora soluzioni dal menu Visualizza di Visual Studio.

  2. In Esplora soluzioni fare doppio clic su DebuggerViewsExample.cs per aprire il file in Visual Studio 2005.

  3. Scegliere Mostra tutti i file dal menu Progetto.

  4. Inserire un punto di interruzione (premere F9) sulla riga in cui il metodo GetCustomers crea un'istanza di una variabile di tipo Customer, come illustrato di seguito:

    Customer c = new Customer(cn, Address.GetAddressById(customerAddresses, cn.Id));

  5. Premere F5 per avviare ed eseguire l'applicazione di esempio nell'ambiente di debug di Visual Studio 2005.

  6. Quando l'applicazione si interrompe in corrispondenza del punto di interruzione, premere F10 per passare alla riga successiva del codice.

  7. Osservare i valori correnti nella finestra Variabili locali espandendo la gerarchia delle proprietà, degli insiemi e di altri oggetti dell'applicazione. Per visualizzare la finestra Variabili locali, scegliere Debug dal menu Finestre, quindi fare clic su Variabili locali.

  8. Scegliere Termina debug dal menu Debug, quindi premere MAIUSC+F5 o fare clic sull'icona nella barra degli strumenti di debug per interrompere l'esecuzione del codice.

  9. Rimuovere il commento dal codice nei tre file il cui nome inizia con Debug. Impostare quindi come commento il codice nei tre file il cui nome inizia con NonDebug oppure selezionare questi file in Esplora risorse, fare clic con il pulsante destro del mouse e scegliere Escludi dal progetto.

  10. Scegliere Avvia dal menu Debug con gli stessi punti di interruzione impostati. Quando l'applicazione si interrompe, osservare i dettagli nella colonna dei valori della finestra Variabili locali, che ora contiene informazioni aggiuntive fornite dagli attributi di debug.

Osservazioni

Per fornire un esempio sull'utilizzo di un attributo di debug, il file DebugCustomer.cs contiene il seguente attributo DebuggerDisplay per la classe CustomerName:

[DebuggerDisplay("{(FirstName == null) ? \"\":FirstName} {LastName} ==> (Customer ID = {Id})")]

Durante il debug, nell'attributo viene visualizzato il valore seguente nella finestra Variabili locali. Il nome cn è un'istanza di un oggetto CustomerName.

Name

Value

Type

cn

"Sally" "HighBridge" ==> (Customer ID = 12345)

Microsoft.Samples.CustomerName

Senza l'attributo, nella finestra Variabili locali viene visualizzato quanto segue:

Name

Value

Type

cn

{Microsoft.Samples.CustomerName}

Microsoft.Samples.CustomerName

Vedere anche

Altre risorse

Debug in Visual Studio