C#如何声明字典类型的Events?

2021-08-22  乐帮网

c#

在特定场景下我们需要使用到字典类型的Action 事件。这样来解决业务场景问题。但是当我们直接使用

private Dictionary<T, event Action> dictionaryOfEvents; 

来写代码时显然是会报错的。这个时候我们可以换一个解决思路。不如声明一个委托,这样就可以达到我们的目的。一段示例代码如下:

  public delegate void CALLBACK(string msg); 

private ConcurrentDictionary<string, CALLBACK> _callBack;

 public void AddCallBack(string methodName,CALLBACK callBack)
        {
            if (string.IsNullOrEmpty(methodName) || callBack != null)
                return;
            _callBack.AddOrUpdate(methodName, callBack, (k, v) => { return v += callBack; });
        }

 

公众号二维码

关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com

庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。

欧阳修

付款二维码

如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力