Example #1
0
        public string GetEventKey(Type type)
        {
            var typename = type.Name;

            if (dic.TryGetValue(typename, out string id))
            {
                return(id);
            }
            lock (dic)
            {
                if (dic.TryGetValue(typename, out id))
                {
                    return(id);
                }
                var res = _manager.GetEventId(typename);
                if (!res.IsVaild && _manager.AllowNoRegisterEvent)
                {
                    return(typename);
                }
                if (!res.IsVaild && !_manager.AllowNoRegisterEvent)
                {
                    throw new Exception("when get event key, response error: " + res.InvaildMessage);
                }
                dic.TryAdd(typename, res.InvaildMessage);
                return(res.InvaildMessage);
            }
        }