public async Task <IActionResult> DeleteItemsFromCart(int userId, [FromBody] int[] productIds) { if (userId <= 0) { return(BadRequest()); } var shoppingCart = await _cartContext.ShoppingCarts .Include(b => b.Items) .SingleOrDefaultAsync(ci => ci.UserId == userId); foreach (var id in productIds) { var item = shoppingCart.Items.Where(ci => ci.Id == id).FirstOrDefault(); _cartContext.Remove(item); } var deleteItemResult = await _cartContext.SaveChangesAsync(); if (deleteItemResult > 0) { _eventStore.Raise("Удалён товар", shoppingCart); } return(Ok(shoppingCart)); }
public async Task <bool> DeleteCartAsync(string id) { var cart = await _context.Carts.SingleOrDefaultAsync(c => c.BuyerId == id); if (cart == null) { _logger.LogInformation($"Cart with id {id} doesn't exists."); return(false); } _context.Remove(cart); int result = await _context.SaveChangesAsync(); return(result > 0); }