Utilisation d'objets dynamiques (Visual Basic)

Les objets Dynamic offrent un moyen différent, autre que le type Object, de créer une liaison tardive à un objet au moment de l'exécution. Un objet dynamique expose des membres tels que les propriétés et les méthodes au moment de l'exécution à l'aide des interfaces dynamiques définies dans l'espace de noms System.Dynamic. Vous pouvez utiliser les classes de l'espace de noms System.Dynamic pour créer des objets fonctionnant avec les structures de données qui ne correspondent pas à un type ou à un format statique. Vous pouvez également utiliser les objets dynamiques définis dans les langages dynamiques tels qu'IronPython et IronRuby. Pour des exemples indiquant comment créer des objets dynamiques ou utiliser un objet dynamique défini dans un langage dynamique, consultez Procédure pas à pas : création et utilisation d'objets dynamiques (C# et Visual Basic), DynamicObject ou ExpandoObject.

Visual Basic crée une liaison avec les objets DLR (Dynamic Language Runtime) et de langages dynamiques tels qu'IronPython and IronRuby à l'aide de l'interface IDynamicMetaObjectProvider. Les classes DynamicObject et ExpandoObject constituent des exemples de classes qui implémentent l'interface IDynamicMetaObjectProvider.

Si un appel à liaison tardive est effectué vers un objet qui implémente l'interface IDynamicMetaObjectProvider, Visual Basic crée une liaison avec l'objet dynamique à l'aide de cette interface. Si un appel à liaison tardive est effectué vers un objet qui n'implémente pas l'interface IDynamicMetaObjectProvider, ou si l'appel à l'interface IDynamicMetaObjectProvider échoue, Visual Basic crée une liaison avec l'objet à l'aide des fonctions de liaison tardive de l'exécution Visual Basic.

Voir aussi

Référence

DynamicObject

ExpandoObject

Concepts

Liaison anticipée et liaison tardive (Visual Basic)

Autres ressources

Procédure pas à pas : création et utilisation d'objets dynamiques (C# et Visual Basic)