我正在尝试使用Type对象创建一个泛型类的实例。
基本上,我将在运行时拥有一个不同类型的对象集合,由于无法确定它们确切的类型,因此我认为必须使用反射。
我正在处理类似以下内容的东西:
基本上,我将在运行时拥有一个不同类型的对象集合,由于无法确定它们确切的类型,因此我认为必须使用反射。
我正在处理类似以下内容的东西:
Type elType = Type.GetType(obj);
Type genType = typeof(GenericType<>).MakeGenericType(elType);
object obj = Activator.CreateInstance(genType);
这是很好的。 ^___^
问题在于,我想访问我的GenericType<>实例的一个方法,但我无法访问它,因为它被定义为对象类。我无法找到一种将obj转换为特定的GenericType<>的方法,因为这本身就是问题(即,我不能像下面这样输入内容:)
((GenericType<elType>)obj).MyMethod();
如何解决这个问题?
非常感谢!^___^