我有型号名称,如
的usermodel
我希望通过字符串变量创建UserModel列表,其中包含" UserModel"价值如
string className = "UserModel";
List<className> users = new List<className>();
感谢
答案 0 :(得分:2)
您需要找到通用参数的类型。如果您拥有完全限定名称,则可以使用Type.GetType
;如果您知道全名和汇编,则可以使用yourAssembly.GetType
:
string typeName = "System.Int32";
var genericArgument = Type.GetType(typeName);
现在,您可以使用List<T>
:
.MakeGenericType
类型
var genericType = typeof (List<>).MakeGenericType(genericArgument);
现在你需要实例化这个List<T>
:
object result = Activator.CreateInstance(genericType);