Asp.net mvc 3 创建操作以获取和显示会话中存储的购物车对象

Asp.net mvc 3 创建操作以获取和显示会话中存储的购物车对象,asp.net-mvc-3,session,Asp.net Mvc 3,Session,大家好。。。 我是ASP.NETMVC的新手。我有一个疑问。 不使用EF使用MVCrazor在购物车中添加更多产品 我的家庭控制器类 public void AddOrderItem(Int64 ID, int quantity) { OrderDO order = (OrderDO)Session["Order"]; order.Items.Add(new OrderItem(ID, quantity));

大家好。。。 我是ASP.NETMVC的新手。我有一个疑问。 不使用EF使用MVCrazor在购物车中添加更多产品 我的家庭控制器类

    public void AddOrderItem(Int64 ID, int quantity)
    {            
        OrderDO order = (OrderDO)Session["Order"];
        order.Items.Add(new OrderItem(ID, quantity));
        Session["Order"] = order;  
    }
}
 public class OrderDO
    {
        private IList<OrderItem> _items;
        public OrderDO()
        {
            this._items = new List<OrderItem>();
        }
        public IList<OrderItem> Items
        {
            get { return this._items; }
        }
    }
    public class OrderItem
    {
        public OrderItem()
        {
        }
        public OrderItem(Int64 ID, int quantity)
        {
            this.ID= ID;
            this.Quantity = quantity;
        }
        public Int64 ID{ get; set; }
        public int Quantity { get; set; }
    }
在上述代码中工作正常。我正在点击购物车按钮,如何获取详细的购物清单

        public ActionResult Details(int id)
        {
            OrderDO order = (OrderDO)Session["Order"];

            return View();
        }

您可以将其作为模型传递给视图:

public ActionResult Details(int id)
{
    OrderDO order = (OrderDO)Session["Order"];
    return PartialView(order.Items);
}
将强类型化到此模型,您可以显示详细信息:

@model IEnumerable<OrderItem>
@ {
    var grid = new WebGrid(Model);
}

@grid.GetHtml()

你能补充一些细节吗?什么购物卡中有什么产品?:)还请发布一些代码,并表达您为完成您愿意做的事情所做的努力。
@model IEnumerable<OrderItem>
@ {
    var grid = new WebGrid(Model);
}

@grid.GetHtml()
$.ajax({
    type: "POST",
    url: '../Home/AddOrderItem',
    data: { ID: ProductID, quantity: Quantity },
    success: function (data) {
        $('#someContentPlaceholder').html(data);
    }
});