<分区>
我有一个通用的方法
Foo<T>
我有一个类型变量 bar
是否有可能实现类似 Foo<bar>
的东西?
Visual Studio 需要一个类型或 namespace 。
<分区>
我有一个通用的方法
Foo<T>
我有一个类型变量 bar
是否有可能实现类似 Foo<bar>
的东西?
Visual Studio 需要一个类型或 namespace 。
最佳答案
假设 Foo 是在类 Test 中声明的,例如
public class Test
{
public void Foo<T>() { ... }
}
您需要首先使用 MakeGenericMethod 实例化 bar
类型的方法.然后使用反射调用它。
var mi = typeof(Test).GetMethod("Foo");
var fooRef = mi.MakeGenericMethod(bar);
fooRef.Invoke(new Test(), null);
关于c# - 使用 Type 变量调用泛型方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3957817/