コード例 #1
0
        public Task Handle(PaymentHistoryPositiveEvent message, IMessageHandlerContext context)
        {
            var startPayment = new StartPaymentCommand
            {
                CartId = message.CartId
            };

            return(context.SendLocal(startPayment));
        }
コード例 #2
0
        public Task Handle(StartPaymentCommand message, IMessageHandlerContext context)
        {
            //TODO: acual charging logic goes here

            //randomly return negative events
            if (random.Next(0, 5) == 0)
            {
                var paymentDenied = new PaymentDeniedEvent
                {
                    CartId = message.CartId
                };
                return(context.Publish(paymentDenied));
            }

            var paymentCompleted = new PaymentCompletedEvent
            {
                CartId = message.CartId
            };

            return(context.Publish(paymentCompleted));
        }