2009-02-05 7 views

Respuesta

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

esto no es un gran problema ni nada, pero se puede reemplazar su tipo array vacío que se pasa en getConstructor con Type.EmptyTypes. Solo un poco más limpio, eso es todo. – Kilhoffer

8

Se podría utilizar la reflexión para esto:

Type t = typeof(Car); 
System.Type genericType= generic.MakeGenericType(new System.Type[] { t}); 
Activator.CreateInstance(genericType, args); 
Cuestiones relacionadas