예제 #1
0
        public void RegisterService <T>(object service) where T : IService
        {
            if (service is IService)
            {
                if (RegistServices == null)
                {
                    RegistServices = new List <IService>();
                }

                var find = RegistServices.FirstOrDefault(o => o.GetType().Equals(typeof(T)));
                if (find != null)
                {
                    //기존에 등록된 service가 있음!
                    throw new Exception("Service is already resgist");
                }
                else
                {
                    RegistServices.Add((IService)service);
                }
            }
            else
            {
                throw new Exception("parameter is must be ISerive");
            }
        }
예제 #2
0
        private T FindService <T>()
        {
            var find = RegistServices.FirstOrDefault(o => o.GetType().Equals(typeof(T)));

            if (find == null)
            {
                //기존에 등록된 service가 없음
                throw new Exception("Service is regist first");
            }
            else
            {
                return((T)find);
            }
        }