/// <summary> /// 尝试从字典获取对象,如不存在则添加 /// </summary> /// <typeparam name="T">事件类型</typeparam> /// <param name="dic">事件缓存字典</param> /// <returns>结果</returns> private static EventHandlerGroup _getOrAddHandlerGroup <T>(IDictionary <object, EventHandlerGroup> dic) { var eventType = typeof(T); if (dic.TryGetValue(eventType, out var ret)) { return(ret); } else { ret = new EventHandlerGroup(eventType, eventType); dic.Add(eventType, ret); return(ret); } }
private static EventHandlerGroup _getOrAddHandlerGroup(IDictionary <object, EventHandlerGroup> dic, object eventType) { eventType = EventHandler.GetInternalEventType(eventType); if (dic.TryGetValue(eventType, out var ret)) { return(ret); } else { var type = EventHandler.GetInternalType(eventType); ret = new EventHandlerGroup(type, eventType); dic.Add(eventType, ret); return(ret); } }