首页 新闻 会员 周边

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

0
悬赏园豆:20 [已解决问题] 解决于 2020-05-28 16:52

 比如这个

IOrderedQueryable<TSource> Queryable.OrderBy<TSource, TKey>(this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector) 

C#
百香居士的主页 百香居士 | 初学一级 | 园豆:137
提问于:2020-05-10 22:16
< >
分享
最佳答案
0

先反射方法名把同名方法列表拉出来,然后反射参数信息,把参数数量类型顺序都匹配的拉出来,正常情况下应该只剩一个符合条件的了。最后 call 进表达式树里就行。我有一篇动态构造表达式的文章,你可以去看看参考一下。

收获园豆:20
coredx | 小虾三级 |园豆:678 | 2020-05-14 17:01
其他回答(1)
0

。。。反射这个干啥?

顾晓北 | 园豆:10844 (专家六级) | 2020-05-11 19:21

动态构造表达式树(Expression),动态调用排序,实现查询的动态化。

支持(0) 反对(0) 百香居士 | 园豆:137 (初学一级) | 2020-05-11 20:26

@百香居士: 这玩意儿不是已经够动态了吗?

支持(0) 反对(1) 顾晓北 | 园豆:10844 (专家六级) | 2020-05-11 20:39

@顾晓北: 只要他还依赖类型就还不够,sql就不依赖类型,所以用sql做查询,数据库不需要预定义任何接口。所以,我的目标是让web api也做到如此,当然还是需要几行代码来配置的。

支持(0) 反对(0) 百香居士 | 园豆:137 (初学一级) | 2020-05-11 22:11

@顾晓北: 不小心点到了反对,希望你不要介意。

支持(0) 反对(0) 百香居士 | 园豆:137 (初学一级) | 2020-05-11 22:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册