如果我有一个COM对象(使用Activator.CreateInstance实例化)将其他对象公开为属性,例如
Object1.Object2.Object3
如果我只使用反射的Object1实例,我如何获得Object3?
答案 0 :(得分:3)
如果我只使用反射的Object1实例,我如何获得Object3?
那是不可能的。您需要先通过反射获取Object2
实例,然后才能访问Object3
。如果你有一些其他对象持有对Object3
的引用,那么这可能是可能的。
顺便说一句,如果您使用的是.NET 4.0或更高版本,您可能会发现dynamic
关键字在处理COM对象和反射时可能会省去很多麻烦。请在此处查看:http://msdn.microsoft.com/en-us/library/vstudio/dd264736.aspx