动态视图

本主题适用于:

版本

Visual Basic

C#

F#

C++

Web Developer

学习版

主题适用 主题适用 主题适用 主题不适用 主题不适用

专业版、高级专业版和旗舰版

主题适用

主题适用

主题适用

主题不适用 主题不适用

此功能仅应用于使用 .NET Framework 版本 4 的项目。

当**“监视”窗口显示实施 IDynamicMetaObjectProvider 的对象时。 接口,调试器将特殊“动态视图”**节点添加到监视显示。 动态视图节点显示动态对象的成员,但不允许编辑成员值。

如果用鼠标右击动态视图的任何子视图,并选择**“添加至监视”**,调试器会将为对象强制转换的新监视变量插入动态对象。 也就是 object Name 将变为:

((dynamic)object.Name

评估动态视图的成员会有副作用。 对于 C#,调试器不会在您转到新一行代码步骤时自动重新计算**“动态视图”**中显示的值。 对于 Visual Basic,将自动刷新通过动态视图添加的表达式。

有关如何刷新**“动态视图”值的说明,请参见 如何:刷新监视值。 有关副作用的说明,请参见 副作用与表达式。 对于 Visual Basic,将自动重新计算“动态视图”**的中显示的值。

如果要只显示对象的动态视图,可以使用 dynamic 格式说明符,此处所示的为 C#:

ObjectName, dynamic

对于 Visual Basic,可以使用该语法:

$dynamic, ObjectName

COM 对象

动态视图还增强了 COM 对象的调试体验。 如果调试程序遇到包装在一般 RCW、System.__ComObject 中的 COM 对象,则会添加对象的**“动态视图”**节点。

请参见

任务

如何:在调试器中监视表达式