Sdílet prostřednictvím


Práce s dynamickými objekty (Visual Basic)

Dynamické objekty poskytují jiný způsob, než pomocí typu Object, pro pozdní vazbu na objekt za běhu. Dynamický objekt zveřejňuje členy jako vlastnosti a metody pomocí dynamických rozhraní, která jsou definována v oboru názvů System.Dynamic. Třídy v System.Dynamic oboru názvů můžete použít k vytvoření objektů, které pracují s datovými strukturami, které neodpovídají statickému typu nebo formátu. Můžete také použít dynamické objekty definované v dynamických jazycích, jako je IronPython a IronRuby. Příklady, které ukazují, jak vytvořit dynamické objekty nebo použít dynamický objekt definovaný v dynamickém jazyce, naleznete v části Návod: Vytváření a používání dynamických objektů, DynamicObjectnebo ExpandoObject.

Visual Basic vytvoří vazbu k objektům z modulu runtime dynamického jazyka a dynamických jazyků, jako je IronPython a IronRuby, pomocí IDynamicMetaObjectProvider rozhraní. Příklady tříd, které implementují IDynamicMetaObjectProvider rozhraní, jsou třídy DynamicObject a ExpandoObject třídy.

Pokud je provedeno pozdní vázané volání objektu, který implementuje IDynamicMetaObjectProvider rozhraní, Visual Basic vytvoří vazbu k dynamickému objektu pomocí daného rozhraní. Pokud je provedeno volání na objekt prostřednictvím zpožděné vazby, který neimplementuje rozhraní IDynamicMetaObjectProvider, nebo pokud volání na rozhraní IDynamicMetaObjectProvider selže, Visual Basic naváže vazbu s objektem pomocí funkcí pozdní vazby modulu Runtime jazyka Visual Basic.

Viz také