关于asp.net c#中对cookie的操作

前些天做一个跨域名cookie传值问题,把cookie的一些东西又搜集和巩固了一遍,深有体会!
 1 HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
2 DateTime dt = DateTime.Now;//定义时间对象
3 TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn
4 cookie.Expires = dt.Add(ts);//添加作用时间
5 cookie.Values.Add("user","cxbkkk");//增加属性
6 cookie.Values.Add("userid","1203");
7 Response.AppendCookie(cookie);//确定写入cookie中        读取cookie
 1 if(Request.Cookies["Info"]!=null)
 2 {
 3     string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+"  "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);
 4     //读全部就用Request.Cookies["Info"].Value)
 5     if(temp=="")
 6     {
 7         Response.Write("空");
 8     }
 9     else
10         Response.Write(temp);
11 }
12 else
13 {
14     Response.Write("error");
15 }        修改cookie
1 Response.Cookies["Info"]["user"] = "2";
2 Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);        删除cookie下的属性
1 HttpCookie acookie=Request.Cookies["Info"];
2 acookie.Values.Remove("userid");
3 acookie.Expires = DateTime.Now.AddDays(1);
4 Response.Cookies.Add(acookie);        删除所有cookie,就是设置过期时间为现在就行了
1 int limit=Request.Cookies.Count - 1;
2 for(int i=0;i<limit;i++)
3 {
4     acookie = Request.Cookies(i)
5     acookie.Expires = DateTime.Now.AddDays(-1)
6     Response.Cookies.Add(acookie)
7 }   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET ,可以使用 C# 代码基于 cookie 实现购物车功能,具体步骤如下: 1. 定义一个名为 "ShoppingCart" 的类,包含商品信息、数量、价格等属性。 ``` public class ShoppingCartItem { public int ProductId { get; set; } public string ProductName { get; set; } public decimal Price { get; set; } public int Quantity { get; set; } } ``` 2. 在添加商品到购物车时,将购物车信息保存到 cookie 。 ``` public void AddToCart(int productId, string productName, decimal price, int quantity) { // 读取购物车信息 List<ShoppingCartItem> cart = GetShoppingCart(); // 查找商品是否已经存在于购物车 ShoppingCartItem item = cart.FirstOrDefault(i => i.ProductId == productId); if (item == null) { // 商品不存在于购物车,将其添加到购物车 item = new ShoppingCartItem { ProductId = productId, ProductName = productName, Price = price, Quantity = quantity }; cart.Add(item); } else { // 商品已经存在于购物车,更新其数量 item.Quantity += quantity; } // 将购物车信息保存到 cookie SaveShoppingCart(cart); } ``` 3. 从 cookie 读取购物车信息。 ``` public List<ShoppingCartItem> GetShoppingCart() { List<ShoppingCartItem> cart = new List<ShoppingCartItem>(); HttpCookie cookie = HttpContext.Current.Request.Cookies["ShoppingCart"]; if (cookie != null) { string json = HttpUtility.UrlDecode(cookie.Value); cart = JsonConvert.DeserializeObject<List<ShoppingCartItem>>(json); } return cart; } ``` 4. 将购物车信息保存到 cookie 。 ``` public void SaveShoppingCart(List<ShoppingCartItem> cart) { string json = JsonConvert.SerializeObject(cart); HttpCookie cookie = new HttpCookie("ShoppingCart", HttpUtility.UrlEncode(json)); HttpContext.Current.Response.Cookies.Add(cookie); } ``` 5. 在购物车页面,读取购物车信息并显示出来。 ``` List<ShoppingCartItem> cart = GetShoppingCart(); foreach (ShoppingCartItem item in cart) { // 显示商品信息、数量、价格等 } ``` 注意,使用 cookie 实现购物车功能的缺点是,购物车信息存储在客户端,容易被篡改或删除。因此,对于重要的商业网站,建议使用服务器端的购物车实现方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值