【发布时间】:2015-08-19 22:01:22
【问题描述】:
我有一个反射类型,它最终是 List<Type>。所以我有:
Type modelType = GetMyType();
所以 - modelType 可能是 List<ClassA> 或 List<ClassB> 等,视情况而定。
如何创建这种类型,然后填充它?
我知道我可以做到:
var myList = Activator.CreateInstance(modelType);
但是我如何向其中添加项目,我通常会使用 myList.Add(new ClassA()) 或 myList.Add(new ClassB()) 知道我真的不知道 ClassA 或 ClassB 类型 - 我只知道 modelType 是List<ClassA> - 是否有其他方法可以实例化它以便我可以添加项目?
【问题讨论】:
-
您要解决什么问题?这看起来很像 XY 问题...
-
我不熟悉 XY 问题?我从另一个方法获取我的对象类型,然后我需要根据从该方法获得的内容来填充它。
标签: c# asp.net list generics reflection