class A
{
public static void M<T>() { ... }
}
...
Type type = GetSomeType();
Then I need to call A.M<T>()
where type == typeof(T)
.
Reflection?
class A
{
public static void M<T>() { ... }
}
...
Type type = GetSomeType();
Then I need to call A.M<T>()
where type == typeof(T)
.
Reflection?
Yes, you need reflection. For example:
var method = typeof(A).GetMethod("M");
var generic = method.MakeGenericMethod(type);
generic.Invoke(null, null);
Because the type is known at runtime you need to use reflection:
Type type = GetSomeType();
var m = typeof(A)
.GetMethod("M", BindingFlags.Static | BindingFlags.Public)
.MakeGenericMethod(type);
m.Invoke(null, null);