Динамическое представление
Этот раздел применим к:
Выпуск |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
![]() |
![]() |
![]() |
![]() |
![]() |
Pro, Premium и Ultimate |
![]() |
![]() |
Эта функция применима только к проектам, которые используют .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, он добавляет узел Динамический просмотр для объекта.