例如,我上课
class TestClass<T>
{
}
我有一些方法可以接收此类的构造函数。 我想用一些通用参数调用该构造函数,而无需再次调用MakeGenericType和GetConstructor方法。
static void Main()
{
var ctor = typeof (TestClass<>).GetConstructors().First();
Invoke(ctor );
}
static void Invoke(ConstructorInfo ctor)
{
//ctor.Invoke() - it will not work because TestClass has a generic parameter.
// I want something like ctor.MakeGenericMethod(typeof(int)).Invoke();
}
有可能吗? 谢谢!
答案 0 :(得分:1)
找到解决方案:
MethodBase.GetMethodFromHandle(ctor.MethodHandle, typeof(TestClass<int>).TypeHandle);