我想做一个函数,当用户选择类名并单击按钮时,它会创建一个新的List<SelectedClass>
。目前我正在使用这样的开关语句:
switch(Name)
case"a" : List<a> X=new List<a>();
case"b" : List<b> X=new List<b>();
还有其他方法吗?
答案 0 :(得分:2)
尝试使用Activator.CreateInstance(因此您不需要任何切换声明):
Type type = Type.GetType(Name); // Example: Type.GetType("NamespaceName.ClassName")
Type listType = typeof(List<>);
var listWithType = listType.MakeGenericType(new [] { type });
var instanceOfList = Activator.CreateInstance(listWithType);