次のように、他のオブジェクトをプロパティとして公開する COM オブジェクト (Activator.CreateInstance でインスタンス化) があるとします。
Object1.Object2.Object3
リフレクションを使用して Object1 のインスタンスしかない場合、どうすれば Object3 を取得できますか?
次のように、他のオブジェクトをプロパティとして公開する COM オブジェクト (Activator.CreateInstance でインスタンス化) があるとします。
Object1.Object2.Object3
リフレクションを使用して Object1 のインスタンスしかない場合、どうすれば Object3 を取得できますか?
リフレクションを使用して Object1 のインスタンスしかない場合、どうすれば Object3 を取得できますか?
それ無理。最初にリフレクションを介してインスタンスを取得する必要があり、Object2
その後でのみアクセスできますObject3
。への参照を保持している他のオブジェクトがあれば、それは可能だったかもしれませんObject3
。
ところで、.NET 4.0 以降を使用している場合はdynamic
、COM オブジェクトとリフレクションを処理する際にキーワードを使用すると、多くの手間が省けることがあります。ここで確認してください: http://msdn.microsoft.com/en-us/library/vstudio/dd264736.aspx