gpt4 book ai didi

c# - 将泛型类型构造函数转换为非泛型类型构造函数

转载 作者:太空宇宙 更新时间:2023-11-03 12:04:08 27 4
gpt4 key购买 nike

比如我有课

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();
}

这有可能吗?谢谢!

最佳答案

找到解决方案:

MethodBase.GetMethodFromHandle(ctor.MethodHandle, typeof(TestClass<int>).TypeHandle);

关于c# - 将泛型类型构造函数转换为非泛型类型构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55844083/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com