动态实例化一个类,比较常见,代码如下
代码语言:javascript复制namespace ConsoleApp2
{
public class MyClass
{
}
}
代码语言:javascript复制Type classType = Type.GetType("ConsoleApp2.MyClass, AssemblyName");
var instance = Activator.CreateInstance(classType);
那如果这个类是泛型类,该如何实例化呢? 这里主要是要传递泛型参数
代码语言:javascript复制namespace ConsoleApp2
{
public class MyGenericClass<T>
{
}
}
代码语言:javascript复制Type classType = Type.GetType("ConsoleApp2.MyGenericClass`1, AssemblyName");
Type constructedType = classType.MakeGenericType(typeof(T));
var instance = Activator.CreateInstance(constructedType);