日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

ASP.NET购物车Cookie获取,创建,添加,更新,删除的用法

發布時間:2025/6/17 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET购物车Cookie获取,创建,添加,更新,删除的用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#region 添加購物車
public void GetShoppingCart(int skuId, int quanlity)
{

  HttpCookie cookie = HttpContext.Current.Request.Cookies["myCart"];//獲取cookie

? ? ?var reg = Session["userInfo"] as Registration; 用戶登入狀態

  #region ?未登入狀態時

? ? ?if(reg == null)

  {

    if(cookie == null) //cookie為null時

? ? ? ? ? ?{

      cookie =?new HttpCookie("myCart");//創建cookie?

? ? ? ? ? ? ? ? ?cookie.Values.Add(skuId.ToString(), quanlity.ToString());//添加Cookie

? ? ? ? ? ? ? ? ?cookie.Expires = DateTime.Today.AddDays(30);//設置Cookie的過期日期或時間

      Response.Cookies.Add(cookie);//將指定的cookie添加到此Cookie集合中

? ? ? ? ? ?}

? ? ? ? ? else if(cookie != null)

? ? ? ? ? {

      if(cookie.Values.AllKeys.Contains(skuId.ToString()))//判斷cookie中是否存在此鍵

? ? ? ? ? ? ? ? ?{

        cookie.Values.Add(skuId.ToString(), quanlity.ToString());

        cookie.Expires = DateTime.Today.AddDays(30);

? ? ? ? ? ? ? ? ? ? ??Response.Cookies.Add(cookie);

? ? ? ? ? ? ? ? ?}

? ? ? ? ? ? ? ? ?else

? ? ? ? ? ? ? ? ?{

        cookie.Values[skuId.ToString()] = (Int32.Parse(cookie.Values[skuId.ToString()]) + quanlity).ToString();

        cookie.Expires = DateTime.Today.AddDays(30);

        Response.Cookies.Add(cookie);  

? ? ? ? ? ? ? ? ?}

? ? ? ? ? }

? ? ?}

? ? ?#endregion

}

#endregion

?

?

#region 更新購物車
public void UpdateShoppingCart(int skuId, int quanlity)
{

  HttpCookie cookie = HttpContext.Current.Request.Cookies["myCart"];

  Sku skuOne = CommodityInfoManager.GetSkuOneBySkuId(skuId.ToString());

? ? ?var reg = Session["userInfo"] as Registration;

? ? ?if(reg != null)//登入用戶賬號時,直接修改數據庫中的購物車的數量

? ? ?{

     ShoppingCarInfoManager.UpdateShoppingCartBySkuIdAndRegisterId(skuId, reg.RegisterId, quanlity); 

? ? ?}

? ? ?else

? ? ?{

    cookie.Values[skuId.ToString()] = quanlity.ToString();//更新cookie中某一項的對應的cookie的值

? ? ? ? ? ?cookie.Expires = DateTime.Today.AddDays(30);

? ? ? ? ? ?Response.Cookies.Add(cookie);

? ? ?}

}

#endregion

?

#region ?刪除購物車某一個商品

public void DeleteSkuId(int skuId, out int cookiState)
{

  cookiState = 1;

? ? ??HttpCookie cookie = HttpContext.Current.Request.Cookies["myCart"];

? ? ??var reg = Session["userInfo"] as Registration;?

  #region 登錄賬號
  if (reg != null)
  {
    ShoppingCart shoppingCart = ShoppingCarInfoManager.GetShoppingCartById(skuId, reg.RegisterId);
    if (shoppingCart != null)
    {
    ShoppingCarInfoManager.DeletedShoppingCartBySkuIdAndRegisertId(skuId, reg.RegisterId);
    }
  }
  #endregion

  #region 未登錄賬號 

  else
  {

    if(cookie != null)

? ? ? ? ? ?{

      if(cookie.Values.AllKeys.Length != 1)//判斷cookie里有很多的鍵值對

? ? ? ? ? ? ? ? ?{

        if(cookie.Values.AllKeys.Contains(skuId.ToString()))

        {

          cookie.Values.Remove(skuId.ToString());//移除cookie中指定的某一項

          cookie.Expires = DateTime.Today.AddDays(30);

          Response.Cookies.Add(cookie);

? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ?}

      else

      {

        cookie.Expires = DateTime.Now.AddDays(-1);//清除cookie  

        cookiState = 0;

        ??Response.Cookies.Add(cookie);  

? ? ? ? ? ? ? ? ?}

? ? ? ? ? ?}

? ? ?}

  #endregion 

}

#endregion

?

#region 清空購物車
public void DeletedShoppingCart(out int cookiState)
{
  cookiState = 1;
  HttpCookie cookie = HttpContext.Current.Request.Cookies["myCart"];
  var reg = Session["userInfo"] as Registration;
  if (reg != null)//清除購物車
  {
    List<ShoppingCart> shoppingCarts =            ??       ? ? ?      ShoppingCarInfoManager.GetShoppingCartsByRegisterId(reg.RegisterId);
    foreach (var r in shoppingCarts)
    {
      ShoppingCarInfoManager.DeletedShoppingCartBySkuIdAndRegisertId(r.SkuId, reg.RegisterId);
    }
  }
  else //清除cookie
  {
    if (cookie != null)
    {
      cookie.Expires = DateTime.Now.AddDays(-1);
      cookiState = 0;
      Response.Cookies.Add(cookie);
    }
  }
}
#endregion

轉載于:https://www.cnblogs.com/simpleBlue3/p/3888604.html

總結

以上是生活随笔為你收集整理的ASP.NET购物车Cookie获取,创建,添加,更新,删除的用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。