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");
            }
        }
Пример #2
0
        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);
        }