public async Task SendOrderChangedToServiceBus(Order order) { await Task.Run(() => { _orderChangedService.AddToMessageList(order); _orderChangedService.SendMessagesAsync(); }); }
public void Save() { _orderChangedService.AddToMessageList(_context.ChangeTracker.Entries <Order>()); _context.SaveChanges(); _orderChangedService.SendMessagesAsync(); }
private static Task Handle(Message message, CancellationToken arg2) { var orderChangedString = Encoding.UTF8.GetString(message.Body); var orderChanged = JsonConvert.DeserializeObject <OrderChangedMessage>(orderChangedString); if (orderChanged.State == OrderState.Paid) { OrderChangedMessage orderFinishedMessage = new OrderChangedMessage { OrderId = new Guid(message.Label), State = (OrderState)ProductionState.Finished, Value = orderChanged.Value, StoreId = orderChanged.StoreId }; // TODO: atribuir como status concluído apenas se o status de produção for READY _orderChangedService.AddToMessageList(orderFinishedMessage); _orderChangedService.SendMessagesAsync(); } return(Task.CompletedTask); }