public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Function, "delete", Route = "baskets/{id}")] HttpRequestMessage req,
            [Inject] IInMemoryBasketRepository basketRepository,
            string id,
            ILogger log)
        {
            log.LogInformation("DeleteBasket function processed a request.");

            if (!Guid.TryParse(id, out var basketId))
            {
                return(new BadRequestObjectResult("Bad request"));
            }

            var customerBasket = await basketRepository.GetBasketAsync(basketId);

            if (customerBasket != null)
            {
                await basketRepository.DeleteBasketAsync(basketId);

                return(new OkObjectResult("Basket deleted"));
            }
            else
            {
                return(new NotFoundObjectResult("Basket not found"));
            }
        }
Beispiel #2
0
        public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Function, "put", Route = "baskets")] HttpRequestMessage req,
            [Inject] IInMemoryBasketRepository basketRepository,
            ILogger log)
        {
            log.LogInformation("UpdateBasket function processed a request.");

            var basket = await req.Content.ReadAsAsync <CustomerBasket>();

            var customerBasket = await basketRepository.UpdateBasketAsync(basket);

            return(new OkObjectResult(customerBasket));
        }