【发布时间】:2015-02-02 10:36:41
【问题描述】:
我有一个方法,它基本上接收一个dynamic 对象。这是由于动态调度,这里不讨论为什么我有一个dynamic 输入。
我知道这个dynamic 对象代表一个类型ASpecialClass<T>,其中T 在编译时是未知的。有没有办法提取T 类型并将其交给另一个方法?
喜欢:
public void DoSomething(dynamic inputObject)//At this point, I know that it implements ASpecialClass<T>, but I don't know what is the T type
{
extracType(InputObject);
CallOtherMethod<With_the_extracted_Type>(inputObject);
}
这里有两件事:
- 有没有办法提取参数的类型
T? - 是否可以将其提供给另一个通用的方法?
谢谢
【问题讨论】:
-
我已经在 SO 上找到了这两个答案 - 希望它们有所帮助:stackoverflow.com/questions/7362532/… 和 stackoverflow.com/questions/1408120/…。
标签: c# generics dynamic-dispatch