我正在使用this method to create the object I want to。
成功调用对象的构造函数。
现在,我想通过反射调用一个方法,但正如我发现的那样,我需要知道类型。当我做像
这样的事情Type type = Type.GetType(this.typeName);
type
为空。
所以,我需要知道的是:如何获取在新AppDomain中加载的程序集的类型?
答案 0 :(得分:2)
您需要使用完整的程序集限定名称,以便可以使用Type.GetType()
this.typeName = typeof(MyClass).AssemblyQualifiedName;
如果没有这个,将在执行程序集中搜索并不总是包含您的类型的类型。
答案 1 :(得分:0)
System.type类型对象本身就是一个对象,其中有一个类型对象指针成员,它的成员引用自身,因为System.Type类型对象本身就是一个类型对象的“实例”。 System.Object的GetType方法返回存储在指定对象的类型对象指针成员中的地址。换句话说,GetType方法返回指向对象类型对象的指针,这就是如何确定系统中任何对象的真实类型。
使用System.Reflection.AssemblyName是一个实用程序类,它可以完整地为您提供程序集的唯一标识的完整详细信息。使用此Class的GetType方法来了解已加载程序集的类型。
http://msdn.microsoft.com/en-us/library/system.object.gettype.aspx
答案 2 :(得分:0)
以下是我如何解决问题: 我创建了一个接口,并使用typeof(MyInterface)来工作arround。
我希望这可以帮到你。