説明/参照:
Explanation:
D:ExpandoObject
実行時にメンバを動的に追加および削除できるオブジェクトを表します。
ExpandoObjectクラスを使用すると、インスタンスのメンバーを実行時に追加および削除することができます。

これらのメンバーの値を設定して取得します。このクラスは動的バインディングをサポートしているため、sampleObject.GetAttribute( "sampleMember")などのより複雑な構文ではなく、sampleObject.sampleMemberなどの標準構文を使用できます。
ExpandoObjectクラスのインスタンスをパラメータとして渡すことができます。これらのインスタンスは、

Visual BasicのC#および遅延バインドオブジェクトでは動的オブジェクトとして扱われます。これは、オブジェクトメンバーに対してIntelliSenseを持たず、存在しないメンバーを呼び出すときにコンパイラエラーを受け取らないことを意味します。存在しないメンバーを呼び出すと、例外が発生します。
注意:
Visual C#2010には新しいタイプの動的要素が導入されています。型は静的型ですが、動的型のオブジェクトは静的型検査をバイパスします。ほとんどの場合、typeオブジェクトを持つように機能します。コンパイル時に、動的とタイプされた要素は、どの操作もサポートすると見なされます。したがって、オブジェクトがCOM API、IronPythonなどの動的言語、HTML DOM(Document Object Model)、リフレクション、またはプログラムの他の場所から値を取得するかどうかについては心配する必要はありません。ただし、コードが有効でない場合、実行時にエラーがキャッチされます。