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

关于委托的BeginInvoke的一个问题

关于委托的BeginInvoke的一个问题

慕斯王 2018-07-24 04:06:11
众所周知 BeginInvoke既不属于Delegate类也不属于MulticastDelegate类 他是定义了一个具体的委托类型后再编译所生成的 现在我想写一个公共的方法 传入一个Delegate类型和一些参数 然后调用这个类型的BeginInvoke  具体如下:public static object[] FireEvent(Delegate del, params object[] args)         {             List<object> list = new List<object>();            if (del != null)             {                 Delegate[] del_list = del.GetInvocationList();                                foreach (var item in del_list)                 {                    try                     {                         (item as 具体委托类型).BeginInvoke(null, null);                     }                    catch (Exception e)                     {                         Console.WriteLine(e.Message);                     }                 }             }            return list.ToArray();         }可是我这个 “具体委托类型” 是不确定的 应该怎么办呢? 诚恳邀请各位大牛解答 !先谢谢了!
查看完整描述

2 回答

?
慕虎7371278

TA贡献1802条经验 获得超4个赞

可以用反射,试试看。

item.Method.Invoke(item.Target, null);


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

添加回答

举报

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