This question already has answers here:
How do I use reflection to call a generic method?

(8个答案)


7年前关闭。




我有:
class Car {..}
class Other{
  List<T> GetAll(){..}
}

我想要做:
Type t = typeof(Car);
List<t> Cars = GetAll<t>();

我怎样才能做到这一点?

我想从运行时使用反射发现的类型的数据库中返回一个通用集合。

最佳答案

Type generic = typeof(List<>);
Type specific = generic.MakeGenericType(typeof(int));
ConstructorInfo ci = specific.GetConstructor(Type.EmptyTypes);
object o = ci.Invoke(new object[] { });

关于c# - 在运行时指定通用集合类型参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/513952/

10-10 22:03