c# - 传递通用类型

标签 c# generics reflection

我有一个方法

 public Queryable Query<T>()
 {
 }

现在我可以通过动态创建泛型参数 T 来调用该方法了。

像这样

 public Queryable Query<T>()
 {

    Query<OtherT>();
 }

otherT 可能是 T 中的一种属性。

谢谢,

最佳答案

您可以使用反射动态调用泛型方法,方法是首先获取泛型方法定义(使用 Type.GetMethod ),然后调用 MakeGenericMethod并提供类型参数,然后调用 Invoke .但是,您没有给我们足够的信息来继续举例。

关于c# - 传递通用类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4202418/

相关文章:

c# - .Net 整个应用程序作为单个 .exe 文件?

Scala:为什么 Int 类型列表也包含 String?

c# - 尝试让委托(delegate)关联到控件的事件时出现问题

java - 反射(reflect)一个只有包级访问权限的类

c# - RavenDb 空间查询

c# - 为什么这个泛型方法调用不匹配?

c# - .Net Framework 4 语音识别——使用小语法时的误报

java - 在 Java 字段中存储类泛型

java - 检查泛型方法中的类型

go - 存储有关结构的信息/引用