public void RemoveShoppingCartLineItem(ShoppingCart cart, ShoppingCart.LineItem item) { item.Quantity--; if (item.Quantity == 0) { cart.LineItems.Remove(item); } }
public static void AddShoppingCartLineItem(this ShoppingCart cart, Product product, string productVariantName) { var productVariant = product.ProductVariants.Single(x => x.Name == productVariantName); var existing = cart.LineItems.SingleOrDefault(x => x.ProductVariantName == productVariant.Name); if (existing != null) { existing.Quantity++; return; } var lineItem = new ShoppingCart.LineItem { UnitPrice = productVariant.Price, ProductId = product.Id, ProductName = product.Name, ProductVariantName = productVariant.Name, Quantity = 1 }; cart.LineItems.Add(lineItem); }