public async void SendOrder(List <SaleItem> saleItems) { PointOfSaleBackEnd backEnd = new PointOfSaleBackEnd(); Console.WriteLine("FrontEnd: Started Async Work"); Task <VerifiedOrder> orderTask = backEnd.PlaceOrderAsync(saleItems); Console.WriteLine("FrontEnd: Doing Other Work"); Thread.Sleep(1000); Console.WriteLine("FronEnd: Retrieving Async Work"); VerifiedOrder orderInformation = await orderTask; if (orderInformation != null) { Console.WriteLine($"Order Verfied: ID {orderInformation.OrderId}"); Console.WriteLine($"Order Verfied: Total ${orderInformation.OrderTotal}"); } else { Console.WriteLine("Error Placing Order With Service"); } }
public async Task <VerifiedOrder> PlaceOrderAsync(List <SaleItem> saleItems) { try { var response = await _transactionServer.PostAsJsonAsync <List <SaleItem> >( "http://localhost:3030/order", saleItems); VerifiedOrder result = await response.Content.ReadAsAsync <VerifiedOrder>(); Console.WriteLine($"Response Headers: {response.Headers}"); Console.WriteLine($"Response Status Code: {response.StatusCode}"); TransactionComplete = true; return(result); } catch (Exception e) { Console.WriteLine($"Exception: {e.Message}"); } return(null); }