public static List <Models.CartItem> RemoveReferences(this List <Models.CartItem> list) { var newList = new List <Models.CartItem>(); list.ForEach(item => { var obj = new Models.CartItem(); obj = item.RemoveReference(); newList.Add(obj); }); return(newList); }
private static Models.CartItem RemoveReference(this Models.CartItem item) { var obj = new Models.CartItem(); if (item != null) { obj.Id = item.Id; obj.IsActive = item.IsActive; obj.ProductVariantDetailId = item.ProductVariantDetailId; //obj.Amount = item.Amount; obj.CartId = item.CartId; //obj.Discount = item.Discount; obj.Quantity = item.Quantity; obj.UnitId = item.UnitId; //obj.UnitPrice = item.UnitPrice; obj.VendorId = item.VendorId; } return(obj); }
public ActionResult AddCartItem(int bookId) { //string bookId = Request.QueryString["bookId"]; //得到当前用户 Customer customer = Session["user"] as Customer; //判断当前用户是否有购物车 var cart = bse.Carts.Where(c => c.customerId == customer.id).FirstOrDefault(); if (cart == null) { //没有则创建购物车 customer = bse.Customers.Where(c => c.id == customer.id).FirstOrDefault(); cart = new Models.Cart(customer); bse.Carts.Add(cart); bse.SaveChanges(); } var cartItem = cart.CartItems.Where(c => c.bookId == bookId).FirstOrDefault(); if (cartItem == null) { var book = bse.Books.Where(b => b.id == bookId).FirstOrDefault(); cartItem = new CartItem(book); cart.CartItems.Add(cartItem); } //更新购物车明细的数量和价钱 cartItem.num += 1; cartItem.price = cartItem.Book.price * cartItem.num; //跟新购物车的明细和价钱 cart.num += 1; cart.price += cartItem.Book.price; bse.SaveChanges(); return RedirectToAction("Cart", "Home"); }