Condividi tramite


Utilizzo di oggetti dinamici (Visual Basic)

Gli oggetti dinamici forniscono un'altra modalità, diversa dal tipo Object, per eseguire un'associazione tardiva a un oggetto in fase di runtime. Un oggetto dinamico espone membri, quali proprietà e i metodi, in fase di runtime utilizzando interfacce dinamiche che sono definite nello spazio dei nomi System.Dynamic. È possibile utilizzare le classi nello spazio dei nomi System.Dynamic per creare oggetti, da utilizzare insieme alle strutture dei dati, che non corrispondono a un formato o un tipo statico. È inoltre possibile utilizzare gli oggetti dinamici definiti nei linguaggi dinamici quali IronPython e IronRuby. Per esempi che illustrano come creare oggetti dinamici o utilizzare un oggetto dinamico definito in un linguaggio dinamico, vedere Procedura dettagliata: creazione e utilizzo di oggetti dinamici (C# e Visual Basic), DynamicObject o ExpandoObject.

Visual Basic supporta l'associazione a oggetti dal runtime del linguaggio dinamico e dai linguaggi dinamici quali IronPython and IronRuby tramite l'interfaccia IDynamicMetaObjectProvider. Esempi di classi che implementano l'interfaccia IDynamicMetaObjectProvider sono le classi DynamicObject e ExpandoObject.

Se viene effettuata una chiamata ad associazione tardiva a un oggetto che implementa l'interfaccia IDynamicMetaObjectProvider, Visual Basic esegue l'associazione all'oggetto dinamico utilizzando tale interfaccia. Se viene effettuata una chiamata ad associazione tardiva a un oggetto che non implementa l'interfaccia IDynamicMetaObjectProvider o se la chiamata all'interfaccia IDynamicMetaObjectProvider non riesce, Visual Basic esegue l'associazione all'oggetto utilizzando le funzionalità dell'associazione tardiva del runtime di Visual Basic.

Vedere anche

Riferimenti

DynamicObject

ExpandoObject

Concetti

Associazione anticipata e tardiva (Visual Basic)

Altre risorse

Procedura dettagliata: creazione e utilizzo di oggetti dinamici (C# e Visual Basic)