0

ショッピング カート タイプのシナリオを持つ 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>();
        }
    }

最初にページに到着したときに空のカートを持ってもらいたい. (このシナリオでは、20 を超えるアイテムを注文することはないため、Session 変数が過剰に入力される心配はありません)。

4

1 に答える 1

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...
    }
}
于 2012-04-12T00:12:18.547 に答える