Condividi tramite


Visualizzazione dinamica

Questa funzionalità si applica solo a progetti che utilizzano .NET Framework versione 4.

Quando la finestra Espressioni di controllo visualizza un oggetto che implementa l'interfaccia IDynamicMetaObjectProvider, il debugger aggiunge un nodo speciale Visualizzazione dinamica alla visualizzazione delle espressioni di controllo. Il nodo di visualizzazione dinamica mostra i membri dell'oggetto dinamico ma non consente la modifica dei valori dei membri.

Se si fa clic con il pulsante destro del mouse su qualsiasi figlio di una Visualizzazione dinamica e si sceglie Aggiungi espressione di controllo, il debugger inserisce una nuova variabile dell'espressione di controllo che esegue il cast di un oggetto a un oggetto dinamico. Nelle altre parole, object Name diventa:

((dynamic)object.Name

La valutazione dei membri di una Visualizzazione dinamica può avere effetti collaterali. Per C#, il debugger non rivaluta automaticamente i valori mostrati in Visualizzazione dinamica quando si avanza a una nuova riga di codice. Per Visual Basic, le espressioni aggiunte tramite la Visualizzazione dinamica vengono aggiornate automaticamente.

Per istruzioni sull'aggiornamento dei valori di Visualizzazione dinamica, vedere Procedura: aggiornare i valori delle espressioni di controllo. Per una spiegazione sugli effetti collaterali, vedere Espressioni ed effetti secondari. Per Visual Basic, i valori mostrati in Visualizzazione dinamica vengono rivalutati automaticamente.

Se si desidera visualizzare la Visualizzazione dinamica per un oggetto, è possibile utilizzare l'identificatore di formato dynamic come mostrato qui per C#:

ObjectName, dynamic

Per Visual Basic è possibile utilizzare la seguente sintassi:

$dynamic, ObjectName

Oggetti COM

La visualizzazione dinamica migliora anche la funzionalità di debug per gli oggetti COM. Quando il debugger rileva un oggetto COM eseguito nel generico RCW, System.__ComObject, aggiunge un nodo Visualizzazione dinamica per l'oggetto.

Vedere anche

Attività

Procedura: controllare un'espressione nel debugger