Trabalhando com objetos dinâmicos (Visual Basic)

Objetos dinâmicos fornecem outra maneira, além do tipo Object, de ligar a um objeto tardiamente em tempo de execução. Um objeto dinâmico expõe membros como propriedades e métodos em tempo de execução usando interfaces dinâmicas definidas no System.Dynamic namespace. Você pode usar as classes no System.Dynamic namespace para criar objetos que funcionam com estruturas de dados que não correspondem a tipo ou formato estático. Você também pode usar os objetos dinâmicos que são definidos em linguagens dinâmicas, como IronPython e IronRuby. Para obter exemplos que mostram como criar objetos dinâmicos ou usar um objeto dinâmico definido em uma linguagem dinâmica, consulte Passo a passo: Criando e usando objetos dinâmicos, DynamicObjectou ExpandoObject.

Visual Basic liga-se a objetos do runtime de linguagem dinâmica e a linguagens dinâmicas como IronPython e IronRuby usando a interface IDynamicMetaObjectProvider. Exemplos de classes que implementam a IDynamicMetaObjectProvider interface são as DynamicObject classes e ExpandoObject .

Se for feita uma chamada tardia para um objeto que implementa a interface IDynamicMetaObjectProvider, o Visual Basic associa-se ao objeto dinâmico utilizando essa interface. Se uma chamada tardia for feita para um objeto que não implementa a IDynamicMetaObjectProvider interface, ou se a chamada para a IDynamicMetaObjectProvider interface falhar, o Visual Basic se liga ao objeto usando os recursos de associação tardia do tempo de execução do Visual Basic.

Ver também