在c#中将Type参数传递给泛型
本文关键字:泛型 参数传递 Type 中将 | 更新日期: 2023-09-27 18:17:41
我有一个通用类ValueCriterion
,它以另一个类类型作为参数。下面的代码可以正常工作。
new ValueCriterion<,CrashDetected>(0));
其中CrashDetected
是一个类。
但是当我使用以下代码获得CrashDetected
类的类型时。
Type myType = Type.GetType("NetworkDB." + "CrashDetected");
并将myType
传递给ValueCriterion
,编译器给我以下错误:
new ValueCriterion<,myType>(0));
我将非常感谢任何帮助。错误1使用泛型类型需要一个类型参数。
您可以使用MakeGenericType
方法来使用Type
实例创建泛型类型:
var type = typeof(ValueCriterion<>).MakeGenericType(myType);
var instance = Activator.CreateInstance(type, 0);