public static void Test()
        {
            EventBus.Instance.Subscribe <OrderConfirmEvent>(new SendEmailEventHandler());
            EventBus.Instance.Subscribe <OrderAddEvent>(new SendEmailEventHandler());

            EventBus.Instance.Subscribe(new ActionDelegatedEventHandler <OrderAddEvent>(new Action <OrderAddEvent>(t =>
            {
                Console.WriteLine("使用委托:Order_Number:{0},Send a Email.", t.OrderId);
            })));
            EventBus.Instance.Subscribe(new ActionDelegatedEventHandler <OrderAddEvent>(t =>
            {
                Console.WriteLine("使用表达式:Order_Number:{0},Send a Email.", t.OrderId);
            }));

            var o = new ActionDelegatedEventHandler <OrderAddEvent>();

            o.AddActionDelegatedEvent += PatternTest_AddActionDelegatedEvent;
            EventBus.Instance.Subscribe(o);

            var orderAdd = new OrderAddEvent()
            {
                OrderId = "1234567"
            };
            var orderConfirm = new OrderConfirmEvent()
            {
                OrderId = "7654321"
            };

            EventBus.Instance.Publish(orderAdd);
            EventBus.Instance.Publish(orderConfirm);
        }
Example #2
0
        public void Confirm()
        {
            // confirmation logic

            OrderConfirmEvent @event = new OrderConfirmEvent(this);

            this.RaiseEvent <OrderConfirmEvent>(@event);
        }
Example #3
0
 public void Handle(OrderConfirmEvent evt)
 {
     Console.WriteLine("Order_Number:{0},Send AddConfirm a Email.", evt.OrderId);
 }
Example #4
0
 void Order_handle_Confirm(OrderConfirmEvent obj)
 {
     new SendEmailEventHandler().Handle(obj);
 }