예제 #1
0
        public async Task Handle(GetInvoiceCommand command, IMessageHandlerContext context)
        {
            Log.Info($"Billing has received GetInvoiceMessage, ClientId = {command.ClientId}");

            Invoice invoice        = _billingService.GenerateInvoice(command.OrderItems);
            var     invoiceMessage = new InvoiceGeneratedMessage
            {
                ClientId = command.ClientId,
                Invoice  = invoice.ToString()
            };

            await context.Reply(invoiceMessage);

            Log.Info($"Billing has replied to the calling endpoint with InvoiceGeneratedMessage, ClientId = {command.ClientId}");
        }