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


Работа с динамическими объектами (Visual Basic)

Динамические объекты предоставляют другой способ, отличный Object от типа, для поздней привязки к объекту во время выполнения. Динамический объект предоставляет элементы, такие как свойства и методы во время выполнения, с помощью динамических интерфейсов, определенных в System.Dynamic пространстве имен. Классы в System.Dynamic пространстве имен можно использовать для создания объектов, работающих с структурами данных, которые не соответствуют статичным типам или формату. Вы также можете использовать динамические объекты, определенные в динамических языках, таких как IronPython и IronRuby. Примеры, демонстрирующие создание динамических объектов или использование динамического объекта, определенного на динамическом языке, см. в пошаговом руководстве. Создание и использование динамических объектовDynamicObject или ExpandoObject.

Visual Basic привязывается к объектам из среды выполнения динамического языка и динамических языков, таких как IronPython и IronRuby с помощью IDynamicMetaObjectProvider интерфейса. Примерами классов, реализующих IDynamicMetaObjectProvider интерфейс, являются DynamicObject классы и ExpandoObject классы.

Если вызов с поздней привязкой выполняется к объекту, реализующего IDynamicMetaObjectProvider интерфейс, Visual Basic привязывается к динамическому объекту с помощью этого интерфейса. Если вызов с поздней привязкой выполняется к объекту, который не реализует IDynamicMetaObjectProvider интерфейс, или если вызов IDynamicMetaObjectProvider интерфейса завершается сбоем, Visual Basic привязывается к объекту с помощью возможностей последней привязки среды выполнения Visual Basic.

См. также