本文整理汇总了C#中Cart.AddItem方法的典型用法代码示例。如果您正苦于以下问题:C# Cart.AddItem方法的具体用法?C# Cart.AddItem怎么用?C# Cart.AddItem使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cart
的用法示例。
在下文中一共展示了Cart.AddItem方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Can_Add_Cart_Items
public void Can_Add_Cart_Items()
{
//Arrange
Cart carrito = new Cart();
Product p1 = new Product { ProductID = 1, Name = "P1" };
Product p2 = new Product { ProductID = 2, Name = "P2" };
//Act
carrito.AddItem(p1, 5);
carrito.AddItem(p2, 2);
CartLine[] results = carrito.Lines.ToArray();
//Assert
Assert.AreEqual(results.Length, 2);
Assert.AreEqual(results[0].Product, p1);
Assert.AreEqual(results[1].Product, p2);
}
示例2: AddToCart
public RedirectToRouteResult AddToCart(int Id, int quantity)
{
cart = getCart();
Product p = db.Products.Where(x => x.Id == Id).SingleOrDefault();
cart.AddItem(p, quantity);
return RedirectToAction("Index", "Shop");
}
示例3: AddToCart
public RedirectToRouteResult AddToCart(Cart cart, int productId,
string returnUrl)
{
Product product = productsRepository.Products
.FirstOrDefault(p => p.ProductID == productId);
cart.AddItem(product, 1);
return RedirectToAction("Index", new { returnUrl });
}
示例4: Calculate_Cart_Total
public void Calculate_Cart_Total()
{
// Arrange
var p1 = new Product { ProductId = 1, Name = "P1", Price = 100M };
var p2 = new Product { ProductId = 2, Name = "P2", Price = 50M };
var target = new Cart();
// Act
target.AddItem(p1, 1);
target.AddItem(p2, 1);
target.AddItem(p1, 3);
var result = target.ComputeTotalValue();
Assert.AreEqual(result, 450M);
}
示例5: After_Checking_Out_Cart_Is_Emptied
public void After_Checking_Out_Cart_Is_Emptied()
{
// Arrange/act: Given a valid order submission
var cart = new Cart();
cart.AddItem(new Product(), 1);
new CartController(null, new Mock<IOrderSubmitter>().Object).CheckOut(cart, new ShippingDetails());
// Assert: The cart is emptied
cart.Lines.Count.ShouldEqual(0);
}
示例6: AddToCart
public RedirectToRouteResult AddToCart(Cart cart, int productId, string returnUrl)
{
var product = repository.Products.FirstOrDefault(p => p.ProductId == productId);
if (product != null)
{
cart.AddItem(product, 1);
}
return RedirectToAction("Index", new { returnUrl });
}
示例7: AddToCart
public ActionResult AddToCart(Cart cart, int dishId)
{
Dish dish = menuService.GetDish(dishId);
if (dish != null)
{
cart.AddItem(dish, 1);
}
ViewData["message"] = "Un plat a été ajouté à votre commande.";
return RedirectToAction("Index", "Client");
}
示例8: ItemGrid_SelectedIndexChanged
protected void ItemGrid_SelectedIndexChanged(object sender, EventArgs e)
{
string name = ItemGrid.Rows[ItemGrid.SelectedIndex].Cells[0].Text;
decimal price = decimal.Parse(ItemGrid.Rows[ItemGrid.SelectedIndex].Cells[1].Text.Remove(0,1));
DropDownList list = (DropDownList)ItemGrid.Rows[ItemGrid.SelectedIndex].Cells[4].Controls[1];
string size = list.SelectedItem.Text;
int quantity = 1;
CartItem newCartItem = new CartItem(name, price, size, quantity);
if (Session["Cart"] == null)
{
Cart cart = new Cart();
cart.AddItem(newCartItem);
Session["Cart"] = cart;
}
else
{
Cart cart = (Cart)Session["Cart"];
cart.AddItem(newCartItem);
}
messageLabel.Text = newCartItem.size + "-sized " + newCartItem.name + " added to your cart.<br /><br />";
}
示例9: AddToCart
public RedirectToRouteResult AddToCart(Cart pCart, int pMediaId, string pReturnUrl)
{
pCart.AddItem(FetchMediaById(pMediaId), 1);
return RedirectToAction("Index", new { pReturnUrl });
}
示例10: Cannot_Check_Out_If_Shipping_Details_Are_Invalid
public void Cannot_Check_Out_If_Shipping_Details_Are_Invalid()
{
// Arrange: Given a user has a non-empty cart
var cart = new Cart();
cart.AddItem(new Product(), 1);
// Arrange: ... but the shipping details are invalid
var cartController = new CartController(null, null);
cartController.ModelState.AddModelError("any key", "any error");
// Act: When the user tries to check out
var result = cartController.CheckOut(cart, new ShippingDetails());
// Assert
result.ShouldBeDefaultView();
}
示例11: Can_Add_New_Lines
public void Can_Add_New_Lines()
{
// Arrange
var p1 = new Product { ProductId = 1, Name = "P1" };
var p2 = new Product { ProductId = 2, Name = "P2" };
var target = new Cart();
// Act
target.AddItem(p1, 1);
target.AddItem(p2, 1);
var result = target.Lines.ToArray();
// Assert
Assert.AreEqual(result.Length, 2);
Assert.AreEqual(result[0].Product, p1);
Assert.AreEqual(result[1].Product, p2);
}
示例12: CartTotalValueIsSumOfPriceTimesQuantity
public void CartTotalValueIsSumOfPriceTimesQuantity()
{
Cart cart = new Cart();
cart.AddItem(new Product { ProductID = 1, Price = 5 }, 10);
cart.AddItem(new Product { ProductID = 2, Price = 2.1m }, 3);
cart.AddItem(new Product { ProductID = 3, Price = 1000 }, 1);
cart.ComputeTotalValue().ShouldEqual(1056.3m);
}
示例13: Can_Add_Quantity_For_Existing_Lines
public void Can_Add_Quantity_For_Existing_Lines()
{
// Arrange
var p1 = new Product { ProductId = 1, Name = "P1" };
var p2 = new Product { ProductId = 2, Name = "P2" };
var target = new Cart();
// Act
target.AddItem(p1, 1);
target.AddItem(p2, 1);
target.AddItem(p1, 10);
var result = target.Lines.OrderBy(x => x.Product.ProductId).ToArray();
Assert.AreEqual(result.Length, 2);
Assert.AreEqual(result[0].Quantity, 11);
Assert.AreEqual(result[1].Quantity, 1);
}
示例14: CartCanRemoveLine
public void CartCanRemoveLine()
{
Cart cart = new Cart();
cart.AddItem(new Product { ProductID = 1 }, 2);
cart.RemoveLine(new Product { ProductID = 1 });
cart.Lines.Count.ShouldEqual(0);
}
示例15: CartCombinesLinesWithSameProduct
public void CartCombinesLinesWithSameProduct()
{
Product p1 = new Product { ProductID = 1 };
Product p2 = new Product { ProductID = 2 };
var cart = new Cart();
cart.AddItem(p1, 1);
cart.AddItem(p1, 2);
cart.AddItem(p2, 10);
cart.Lines.Count.ShouldEqual(2);
cart.Lines.First(x => x.Product.ProductID == 1).Quantity.ShouldEqual(3);
cart.Lines.First(x => x.Product.ProductID == 2).Quantity.ShouldEqual(10);
}