BACK按下时如何防止推车擦拭?

rlb*_*usa 0 asp.net session

我有一个带有购物车类型场景的ASP.NET应用程序.

我担心用户按BACK或REFRESH清理他们的购物车.有什么方法可以防止这种情况发生?

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            //do stuff...

            //create a new list of items/ eg,  blank cart
            Session["shoppingcart"] = new List<InventoryItem>();
        }
    }
Run Code Online (Sandbox Code Playgroud)

我希望他们第一次到达页面时有一个空车.(在这种情况下,他们从不订购超过20个项目,所以我不担心会溢出Session变量).

Ken*_*ing 5

如果您不希望清除购物车,则不要创建新购物车(如果已存在).

尝试:

protected void Page_Load(object sender, EventArgs e)
{
    // ensure a shopping cart has been created
    if (Session["shoppingcart"] == null)
        Session["shoppingcart"] = new List<InventoryItem>();

    if (!Page.IsPostBack)
    {
        //do stuff...
    }
}
Run Code Online (Sandbox Code Playgroud)