C#利用反射实例化List<className>(未知类名的情况下)
class Staff
{
.....;
}
class Main()
{
void Run()
{
List<Staff> staffs = new List<Staff>();
}
}
问题:如果不知道Staff类的类名 只有一个string(值为"Staff") 如何像下面那样实例化List<>
List<Staff> staffs = new List<Staff>();
(我只知道如何利用反射实例化Staff 但是不知道如何实例化List<Staff>)
先谢谢大家了!
------解决方案--------------------var d1 = typeof(List<>);
Type[] typeArgs = { Type.GetType("Namespace.Staff") };
var makeme = d1.MakeGenericType(typeArgs);
object o = Activator.CreateInstance(makeme);
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/