Sdílet prostřednictvím


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

Dynamické objekty poskytují jiný způsob, než Object je typ, pro pozdější vazbu k objektu za běhu. Dynamický objekt zveřejňuje členy, jako jsou vlastnosti a metody za běhu, pomocí dynamických rozhraní, která jsou definována System.Dynamic v oboru názvů. 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 volání zpožděné vazby objektu, který neimplementuje IDynamicMetaObjectProvider rozhraní, nebo pokud volání IDynamicMetaObjectProvider rozhraní selže, Visual Basic vytvoří vazbu k objektu pomocí funkcí pozdní vazby modulu Runtime jazyka Visual Basic.

Viz také