次の方法で共有


動的オブジェクトの操作 (Visual Basic)

動的オブジェクトは、実行時にオブジェクトに遅延バインドする、 Object 型以外の別の方法を提供します。 動的オブジェクトは、 System.Dynamic 名前空間で定義されている動的インターフェイスを使用して、実行時にプロパティやメソッドなどのメンバーを公開します。 System.Dynamic名前空間のクラスを使用して、静的な型または形式に一致しないデータ構造を操作するオブジェクトを作成できます。 IronPython や IronRuby などの動的言語で定義されている動的オブジェクトを使用することもできます。 動的オブジェクトを作成する方法、または動的言語で定義された動的オブジェクトを使用する方法を示す例については、「 チュートリアル: 動的オブジェクトDynamicObject、または ExpandoObjectの作成と使用」を参照してください。

Visual Basic は、 IDynamicMetaObjectProvider インターフェイスを使用して、動的言語ランタイムおよび IronPython や IronRuby などの動的言語のオブジェクトにバインドします。 IDynamicMetaObjectProvider インターフェイスを実装するクラスの例としては、DynamicObjectクラスとExpandoObject クラスがあります。

IDynamicMetaObjectProvider インターフェイスを実装するオブジェクトに遅延バインディング呼び出しが行われた場合、Visual Basic はそのインターフェイスを使用して動的オブジェクトにバインドします。 IDynamicMetaObjectProvider インターフェイスを実装していないオブジェクトに遅延バインディング呼び出しが行われた場合、または IDynamicMetaObjectProvider インターフェイスの呼び出しが失敗した場合、Visual Basic は Visual Basic ランタイムの遅延バインディング機能を使用してオブジェクトにバインドします。

こちらも参照ください