Mvc - 在会话中存储列表,然后检索其值

时间:2014-02-05 16:47:49

标签: asp.net-mvc

您好我正在尝试制作一个简单的在线杂志,当我找到用户点击addtoCart按钮时的部分

我的模型购物车拥有两个属性 - 产品和数量

public class Cart
{

 public ProductLanguages Product { get; set; }
        public int Quantity { get; set; }

}

因此,在我的AddProductToCart方法中的basketViewModel(类)中,我添加了产品,我从List的属性中获取了数据库的详细信息。

所以我无法弄清楚这个问题:控件中的某个地方我应该在会话中保存此列表,如果用户在下次从此会话中获取列表时添加更多产品。如果有人可以给我一个带有索引动作的控制器的例子,我会非常感激。

public class BasketViewModel
    {

        private readonly IProductLanguagesRepository prodlanRepository;
        public List<Cart> listProductsinBasket { get; set; }
        public BasketViewModel() : this(new ProductLanguagesRepository())
        {

        }



    public BasketViewModel(IProductLanguagesRepository prodlanRepository)
    {
        this.prodlanRepository = prodlanRepository;
    }
    public void AddProductToCart(int id,int quantity)
    {
        ProductLanguages nwProduct = prodlanRepository.GetProductDetails(id);
        if (nwProduct != null)
        {
            Cart cr = new Cart();
            cr.Product = nwProduct;
            cr.Quantity = quantity;
            listProductsinBasket.Add(cr);

        }

1 个答案:

答案 0 :(得分:4)

商品

HttpContext.Session["list"] = new List<object> { new object(), new object() };

<强>提取

var list = HttpContext.Current.Session["list"] as List<object>;