【发布时间】:2013-10-27 17:43:48
【问题描述】:
我需要使用反射调用重载方法。 我的课程如下:
public static Transformer
{
//Overloaded method with generics parameter. First Transform Method
public static TranformerResult Transform<T>(object [] entities,
List<T> dataContract) where T:class
{
return transformerResult;
}
//Overloaded method without generics parameter. Second Transform Method
public static TranformerResult Transform(object entities,
Type dataContract)
{
return transformerResult;
}
}
public class TransformerResult
{
public List<T> GetTypes<T>() where T:class
{
}
}
我尝试使用以下语法调用第一个 Transform 方法:
GetMethod(“Transform”,(BindingFlags.Static | BindingFlags.Public),
null, new Type[](){typeof(object[]),typeof(List<Type>}, null)
但是我得到了第二个 Transform 方法。
我的意图是在 transformerResult 上调用 GetType。 TransformerResult 是一个返回第一个转换方法调用的对象。
谁能帮我写 C# 代码来实现我的意图?
谢谢, 马希尔
【问题讨论】:
标签: c# reflection