获取在新AppDomain中加载的程序集的类型

本文关键字:程序集 类型 加载 AppDomain 获取 | 更新日期: 2023-09-27 18:19:00

我正在使用这个方法来创建我想要的对象。

对象的构造函数被成功调用。

现在,我想通过反射调用一个方法,但正如我所发现的,我需要知道类型。当我输入

Type type = Type.GetType(this.typeName);

type为空。

所以,我需要知道的是:我如何获得在新的AppDomain中加载的程序集的类型?

获取在新AppDomain中加载的程序集的类型

您需要使用完整的程序集限定名,因此您可以使用Type.GetType()

重新创建它
this.typeName = typeof(MyClass).AssemblyQualifiedName;

如果没有这个,执行程序集将搜索不总是包含您的类型的类型。

系统。type type object本身就是一个对象,它有一个类型对象指针成员,它的成员引用它自己,因为System。类型Type对象本身是类型对象的"实例"。和系统。对象的GetType方法返回存储在指定对象的类型对象指针成员中的地址。换句话说,GetType方法返回一个指向对象类型对象的指针,这就是您如何确定系统中任何对象的真实类型的方法。

Use System.Reflection.AssemblyName是一个实用程序类,它为您提供程序集唯一标识的完整详细信息。使用该类的GetType方法来了解加载的程序集的类型。

http://msdn.microsoft.com/en-us/library/system.object.gettype.aspx

我是这样解决这个问题的:我创建了一个接口,并使用typeof(MyInterface)来解决这个问题。

我希望这对你有帮助