【问题标题】:how to append a cookie for shopping cart details in asp.net in c#如何在 c# 中的 asp.net 中为购物车详细信息附加 cookie
【发布时间】:2017-04-03 19:55:56
【问题描述】:

在这里,我想在 cookie 名称购物车中附加新产品的产品 ID,以便任何人都可以帮助我

protected void lnkAddToCart_Click(object sender, EventArgs e)
{

    HttpCookie CartCookie=Request.Cookies["cart"];
    if (CartCookie != null)
    {
        string str = CartCookie.ToString();
        str= str + ";"+ _ProductID.ToString();
        Response.Cookies["cart"].Value = str;

    }
    else
    {
         CartCookie = new HttpCookie("cart");
       CartCookie["Cart"] = _ProductID.ToString();
       CartCookie.Expires = DateTime.Now.AddYears(1);
       Response.Cookies.Add(CartCookie);
    }
}

【问题讨论】:

  • 你有什么问题? CartCookie["Cart"] 更改为 CartCookie["cart"]

标签: c# asp.net cookies session-cookies httpcookie


【解决方案1】:

设置 Cookie

public void AddToCartCookie(List<string> listCookie)
{        
      string objCartListString = string.Join(",", listCookie);

      if (Request.Cookies["CartCookie"] == null)
          Response.Cookies["CartCookie"].Value = objCartListString;
      else
          Response.Cookies["CartCookie"].Value = Request.Cookies["CartCookie"].Value + "|" + objCartListString;

      Response.Cookies["CartCookie"].Expires = DateTime.Now.AddYears(30);
}

这里的 listCookie 是字符串列表 字符串产品名称、数量、价格等;

然后通过像这样拆分来检索它

if (Request.Cookies["CartCookie"] != null)
{
        string objCartListString = Request.Cookies["CartCookie"].Value.ToString();
        string[] objCartListStringSplit = objCartListString.Split('|'); 
        foreach(string s in objCartListStringSplit)
        {
            string[] ss = s.Split(',');
            productName = ss[0];
            quantity = Convert.ToDouble(ss[1]);
            price = Convert.ToDecimal(ss[3]);
           .........                    
        }
}

【讨论】:

    猜你喜欢
    • 2016-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-29
    • 2014-08-14
    • 1970-01-01
    • 2018-09-14
    • 2019-09-23
    相关资源
    最近更新 更多