private void CheckInventory()
        {
            string warehouseCode = "Test";
            string entryCode     = "PriceTest_1";
            int    quantity      = 2;

            List <InventoryRequestItem> requestItems = new List <InventoryRequestItem>(); // holds the "items"
            InventoryRequestItem        requestItem  = new InventoryRequestItem();        // The one we use now

            requestItem.CatalogEntryCode = entryCode;
            requestItem.Quantity         = quantity;
            requestItem.WarehouseCode    = warehouseCode;
            requestItem.RequestType      = InventoryRequestType.Purchase; // reserve for now
            requestItems.Add(requestItem);

            InventoryRequest inventoryRequest =
                new InventoryRequest(DateTime.UtcNow, requestItems, null);
            InventoryResponse inventoryResponse = invSrvs.Service.Request(inventoryRequest);
            bool theBool = false;

            if (inventoryResponse.IsSuccess)
            {
                theBool = inventoryResponse.IsSuccess;
            }
            else
            {
                InventoryResponseItem     iii      = inventoryResponse.Items.FirstOrDefault();
                InventoryResponseTypeInfo typeInfo = iii.ResponseTypeInfo;
            }

            /*
             *
             *
             */
        }
        public static InventoryResponse ToInventoryResponse(this InventoryWebServiceResponse1 response)
        {
            var result = new InventoryResponse();

            if (response.InventoryResponse == null)
            {
                return(result);
            }
            result = new InventoryResponse
            {
                InventoryResponseItems = new InventoryResponseItem[response.InventoryResponse.InventoryResponseDetail.Length]
            };

            int itemNum = 0;

            foreach (var serviceInventoryResponseDetail in response.InventoryResponse.InventoryResponseDetail)
            {
                //Values comes in as a string with decimal formatting, e.g "1.00"
                var quantity = Convert.ToDecimal(serviceInventoryResponseDetail.Quantity, CultureInfo.InvariantCulture);
                var inventoryResponseDetail = new InventoryResponseItem
                {
                    OrderLineNumber = serviceInventoryResponseDetail.OrderLineNumber,
                    ProductId       = serviceInventoryResponseDetail.ProductID,
                    Quantity        = quantity,
                    ShippingPoint   = serviceInventoryResponseDetail.ShippingPoint,
                };

                var numOfAvailQty = 0;
                var availableQtyWithDollarValue = serviceInventoryResponseDetail.ItemDetail.Where(itemDetail => Decimal.Parse(itemDetail.AvailableQty, CultureInfo.InvariantCulture) != 0.00M);
                inventoryResponseDetail.Availabilities = new Availability[availableQtyWithDollarValue.ToList().Count];

                foreach (var avaialblity in availableQtyWithDollarValue.Select(itemDetail => new Availability
                {
                    AvailableDate = DateTime.ParseExact(itemDetail.AvailableDate, "yyyyMMdd", CultureInfo.InvariantCulture),
                    AvailableQty = Convert.ToDecimal(itemDetail.AvailableQty, CultureInfo.InvariantCulture)
                }))
                {
                    inventoryResponseDetail.Availabilities[numOfAvailQty] = avaialblity;
                    numOfAvailQty++;
                }
                result.InventoryResponseItems[itemNum] = inventoryResponseDetail;
                itemNum++;
            }

            return(result);
        }