Example #1
0
        public void Remove_event_order_explicitly()
        {
            var address   = new AddressBuilder().Build();
            var fakeOrder = new Order(
                userId: "fakeUserId",
                address: address,
                cardTypeId: 1,
                cardNumber: "fakeCardNumber",
                cardSecurityNumber: "fakeCardSecurityNumber",
                cardHolderName: "fakeCardHolderName",
                cardExpiration: DateTime.UtcNow.AddDays(1),
                buyerId: 1,
                paymentMethodId: 2);

            var domainEvent = new OrderCreatedDomainEvent(fakeOrder,
                                                          userId: "fakeUserId",
                                                          cardTypeId: 1,
                                                          cardNumber: "fakeCardNumber",
                                                          cardSecurityNumber: "fakeCardSecurityNumber",
                                                          cardHolderName: "fakeCardHolderName",
                                                          cardExpiration: DateTime.UtcNow.AddDays(1));

            fakeOrder.AddDomainEvent(domainEvent);
            fakeOrder.RemoveDomainEvent(domainEvent);

            Assert.Equal <int>(fakeOrder.DomainEvents.Count, 1);
        }
Example #2
0
        //添加订单创建领域事件
        private void AddOrderCreatedDomainEvent(string userId,
                                                int cardTypeid,
                                                string cardNumber,
                                                string cardSecurityNumber,
                                                string cardHolderName,
                                                DateTime cardExpiration)
        {
            var orderCreatedDomainEvent = new OrderCreatedDomainEvent(this,
                                                                      userId,
                                                                      cardTypeid,
                                                                      cardNumber,
                                                                      cardSecurityNumber,
                                                                      cardHolderName,
                                                                      cardExpiration);

            this.AddDomainEvent(orderCreatedDomainEvent);
        }
 public async Task Handle(OrderCreatedDomainEvent notification, CancellationToken cancellationToken)
 {
     await _capPublisher.PublishAsync("OrderCreated", new OrderCreatedIntegrationEvent(notification.Order.Id));
 }
Example #4
0
 public void Visit(OrderCreatedDomainEvent orderCreatedDomainEvent)
 {
     StartCalc(orderCreatedDomainEvent.CreationDate);
 }