为了账号安全,请及时绑定邮箱和手机立即绑定

c# 扩展方法问题

c# 扩展方法问题

C#
holdtom 2018-07-27 08:02:27
code:    public static class EnumerableExtensions     {        public static T Find<T>(this IEnumerable<T> enumerable, Predicate<T> match)         {           return enumerable.Find(match);         }       }调用:ErpDic.Value.AsParallel().Find(x => x.code == code)ErpDic是个  private Lazy<List<sys_dict_common>> ErpDic;为什么这个 扩展方法find 进入了无限递归呢?不明白。
查看完整描述

2 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

IEnumerable<T>没有Find方法,你这里这样用肯定是递归了。

查看完整回答
反对 回复 2018-07-30
?
智慧大石

TA贡献1946条经验 获得超3个赞

enumerable.Find(match);这里不就是在调用public static T Find<T>(this IEnumerable<T> enumerable, Predicate<T> match)....

而且要是你这么写不递归.你就把这扩展方法删了也一样能调用明白不.

1.递归了,因为你写了这个方法

2.没递归,那你就不用写这方法.

结论:你冷静下来好好想想人生


查看完整回答
反对 回复 2018-07-30
  • 2 回答
  • 0 关注
  • 750 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信