public async Task Handle(RaffleOrderCompleteEvent notification, CancellationToken cancellationToken) { try { var order = notification.Order; var body = BuildTemplate(reader.GetContents("Raffle.Core.EmailTemplates.OrderComplete.html"), order); var text = BuildTextTemplate(notification.Order); await SendCustomerReceiptEmail(order, body, text); await SendOrderReceivedEmail(order, body, text); } catch (Exception ex) { logger.LogError(ex, "Failed to send emails after order completed"); } }