Modo de exibição dinâmico
This topic applies to:
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium e Ultimate |
Este recurso se aplica apenas aos projetos que usam.NET Framework versão 4.
Quando o Watch janela exibe um objeto que implementa o IDynamicMetaObjectProvider. interface, o depurador adiciona um especial o modo de exibição dinâmica o nó para a exibição de inspeção. O nó de exibição dinâmica mostra os membros do objeto dinâmico, mas não permitir a edição dos valores de membro.
Se você qualquer filho de um modo de exibição dinâmica com o botão direito e escolha Adicionar Inspeção de variáveis, o depurador insere uma nova variável de inspeção que projeta o objeto para um objeto dinâmico. Em outras palavras, object Name torna-se:
((dynamic)object.Name
Avaliar os membros de um modo de exibição dinâmica pode ter efeitos colaterais. Para C#, o depurador não automaticamente reavaliar os valores mostrados na o modo de exibição dinâmica quando você passar para uma nova linha de código. Para Visual Basic, expressões adicionadas por meio do modo de exibição dinâmicas são atualizadas automaticamente.
Para obter instruções sobre como atualizar o o modo de exibição dinâmica valores, consulte Como: Refresh Watch Values. Para obter uma explicação das quais são os efeitos colaterais, consulte Efeitos Colaterias e Expressões. Para Visual Basic, valores mostrados na o modo de exibição dinâmica automaticamente são reavaliadas.
Se você deseja exibir somente a visualização dinâmica para um objeto, você pode usar o dynamic formato de especificador conforme mostrado aqui para C#:
ObjectName, dynamic
Para Visual Basic, você pode usar esta sintaxe:
$dynamic, ObjectName
Objetos COM
O modo de exibição dinâmica também melhora a experiência de depuração para objetos COM. Quando o depurador encontrar um objeto COM disposto no RCW genérico, System.__ComObject, ele adiciona um o modo de exibição dinâmica o nó para o objeto.