コード例 #1
0
ファイル: EventBinder.cs プロジェクト: ruo2012/nicnet
        /// <summary>
        /// Perform all necessary calls
        /// </summary>
        public virtual void Init()
        {
            EventInfo myEventBinding = SenderObject.GetType().GetEvent(SenderEvent);

            if (myEventBinding == null)
            {
                throw new NullReferenceException(SenderEvent);
            }

            MethodInfo mInfo = ReceiverObject.GetType().GetMethod(ReceiverMethod);

            if (mInfo == null)
            {
                throw new MissingMethodException(ReceiverObject.GetType().ToString(), ReceiverMethod);
            }

            try {
                System.Delegate del = System.Delegate.CreateDelegate(myEventBinding.EventHandlerType, ReceiverObject, mInfo);
                myEventBinding.AddEventHandler(SenderObject, del);
            } catch (Exception e) {
                throw new Exception(
                          String.Format("Cannot subscribe '{0}' method on '{1}' event: {2}",
                                        ReceiverMethod, SenderEvent, e.Message), e);
            }
        }
コード例 #2
0
        public async Task <bool> Payment(PaymentModel total)
        {
            try
            {
                string       url = IRES_Global.GlobalInfo.BaseUrl + @"/customer/payment/order";
                SenderObject s   = new SenderObject(total);
                s.OrderId = IRES_Global.GlobalInfo.Order.orderId;
                var body    = JsonConvert.SerializeObject(s);
                var content = new StringContent(body, Encoding.UTF8, "application/json");

                var response = await client.PostAsync(url, content);

                if (response.IsSuccessStatusCode)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                Console.WriteLine("Không thể kết nối");
                return(false);
            }
        }
コード例 #3
0
        private void AddHandler()
        {
            if ((SenderObject is null) || string.IsNullOrEmpty(EventName))
            {
                return;
            }

            _eventInfo = SenderObject.GetType().GetEvent(EventName);
            if (_eventInfo is null)
            {
                return;
            }

            _handler = CreateDelegate(_eventInfo, Activate);
            _eventInfo.AddEventHandler(SenderObject, _handler);
        }
コード例 #4
0
        public static void SendingData(ServerObject data)
        {
            SenderObject senderObject = (SenderObject)data.Data;

            connectedUsers.FirstOrDefault(u => u.Id == senderObject.SenderId).Group?.SendToAll(senderObject);
        }