Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#获取泛型类型<;T>;给定T_C#_Generics_Types - Fatal编程技术网

C#获取泛型类型<;T>;给定T

C#获取泛型类型<;T>;给定T,c#,generics,types,C#,Generics,Types,我在C#中有一个泛型类,如下所示: public class GenericClass<T> { ... } var instance = Activator.CreateInstance(wantedType, new Object[] { ...params }); 显然,这种语法不起作用,但我该怎么做呢?typerequiredt=myobject.GetType(); Type requiredT = myobject.GetType(); Type generic

我在C#中有一个泛型类,如下所示:

   public class GenericClass<T> { ... }
var instance = Activator.CreateInstance(wantedType, new Object[] { ...params });
显然,这种语法不起作用,但我该怎么做呢?

typerequiredt=myobject.GetType();
Type requiredT = myobject.GetType();
Type genericType = typeof(GenericClass<>);
Type wantedType = genericType.MakeGenericType(requiredT);
类型genericType=typeof(GenericClass); 类型wantedType=genericType.MakeGenericType(requiredT);
是的,您可以:

Type requiredT = ...
Type genericType = typeof(GenericClass<>);
Type wantedType = genericType.MakeGenericType(requiredT);
Type wantedType=typeof(GenericClass)。MakeGenericType(requiredT);
var instance = Activator.CreateInstance(wantedType, new Object[] { ...params });
Type wantedType = typeof(GenericClass<>).MakeGenericType(requiredT);