【发布时间】:2014-06-10 20:09:43
【问题描述】:
我正在使用 MVC 创建一个 ASP.NET 购物车。
我的商店实体包含一个篮子的 DBSet。我的篮子模型,包含一个篮子项目列表。问题是,我的“AddtoBasket”函数,需要在当前的BasketItems列表中进行搜索,判断是否已经存在相同的“basketitem”,如果存在,增加数量。我在购物车逻辑上处于死胡同。我将如何搜索当前的“basketItems”列表?
存储上下文
public class StoreEntities : DbContext
{
public DbSet<Order> Order { get; set; }
public DbSet<OrderItems> OrderItems {get; set;}
public DbSet<Basket> Basket { get; set; }
public dbSet<BaskItem> BasketItems {get; set; }
}
型号
public class BasketItem
{
[Key]
public int BasketItemID { get; set; }
public string sellerID { get; set; }
public string sku { get; set; }
public int Quantity { get; set; }
public decimal Price { get; set; }
}
public class Basket
{
[Key]
public string BasketID { get; set; }
public virtual List<BasketItem> BasketItems { get; set; }
public System.DateTime DateCreated { get; set; }
}
购物车逻辑
public void AddtoBasket(BasketItem basketItem)
{
//Search Current Basket for basketItem
//
//If item doesnt exists, add it
if (basketItem == null){
basketItem = new BasketItem
{
sku = "",
sellerID = "",
Quantity = 1,
Price = 100
};
storeDB.BasketItems.Add(basketItem);
storeDB.SaveChanges();
}
else
{
basketItem.Quantity = +basketItem.Quantity;
storeDB.SaveChanges();
}
}
#endregion
【问题讨论】:
-
谷歌! google.com/…
标签: c# asp.net asp.net-mvc-4 shopping-cart