Поделиться через


Динамическое представление

Эта функция применяется только к проектам, которые используют .NET Framework 4.

Когда окно Контрольные значения отображает объект, реализующий интерфейс IDynamicMetaObjectProvider, отладчик добавляет специальный узел Динамическое представление в область отображения контрольных значений. Узел динамического представления отображает члены динамического объекта, но не допускает редактирования значений членов.

Если щелкнуть правой кнопкой мыши любой дочерний элемент динамического представления и выбрать команду Добавить контрольное значение, отладчик вставляет новую переменную наблюдения, приводящую объект к динамическому объекту. Другими словами object Name становится:

((dynamic)object.Name

Вычисление членов динамического представления может иметь побочные эффекты. Для C# отладчик автоматически не пересчитывает значения, отображаемые в Динамическом представлении при переходе на новую строку кода. В Visual Basic выражения, добавляемые с помощью динамического представления, автоматически обновляются.

Инструкции о том, как обновить значения Динамического представления, см. в разделе Практическое руководство. Обновление просматриваемых значений. Объяснение того, что такое побочные эффекты, см. в разделе Побочные эффекты и выражения. Для Visual Basic значения, представленные в Динамическом представлении, автоматически повторно вычисляются.

Если требуется отобразить только динамическое представление объекта, можно использовать спецификатор формата dynamic, как показано ниже, для C#:

ObjectName, dynamic

Для Visual Basic используется следующий синтаксис:

$dynamic, ObjectName

Объекты COM

Динамическое представление также улучшает процесс отладки для COM-объектов. Когда отладчик встречает COM-объект в вызываемой оболочке среды выполнения, System.__ComObject, он добавляет узел Динамическое представление для объекта.

См. также

Задачи

Практическое руководство. Просмотр выражения в отладчике