如何反射重载的泛型方法???

zhujiawei7 2013-02-19 02:26:34

public static class TestClass
{
public static void TestMethod<T>(){}
public static void TestMethod<T>(string name){}

public static void TestMethod<T, S>(){}
public static void TestMethod<T, S>(string name){}
}


如果只是反射参数不同的重载方法是没什么问题,求高手解答如何反射这种泛型不同的方法?
...全文
220 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhujiawei7 2013-02-19
  • 打赏
  • 举报
回复
catchdream 2013-02-19
  • 打赏
  • 举报
回复
引用 1 楼 bdmh 的回复:
http://blog.163.com/lihanying_vin/blog/static/16563016720111462147374/
学习
qldsrx 2013-02-19
  • 打赏
  • 举报
回复

            ParameterInfo[] types;
            MethodInfo method = typeof(LoginForm).GetMethods(BindingFlags.Static | BindingFlags.Public)
                .First(t => t.Name == "TestMethod" 
                        && t.IsGenericMethod
                        && t.GetGenericArguments().Length == 2
                        && (types = t.GetParameters()).Length == 1 && types[0].ParameterType == typeof(string));
bdmh 2013-02-19
  • 打赏
  • 举报
回复
找到所有同名的方法,然后MethodInfo中有个IsGenericMethod属性判断是否泛型方法
zhujiawei7 2013-02-19
  • 打赏
  • 举报
回复
引用 1 楼 bdmh 的回复:
http://blog.163.com/lihanying_vin/blog/static/16563016720111462147374/
这貌似针对泛型类,并不是我要的的泛型方法。

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧