赞
踩
HttpCookie 是一个在.NET Framework中用于管理和操作HTTP Cookie的类。它提供了一种方便的方式来创建、设置、读取和删除Cookie。
Cookie是一种在客户端和服务器之间传递数据的机制,用于跟踪用户的会话状态和存储用户相关的信息。它通常由服务器发送给客户端,并由客户端保存在浏览器中。
HttpCookie 类提供了以下属性和方法:
通过使用HttpCookie类,开发人员可以轻松地创建和管理HTTP Cookie。它在Web应用程序中广泛应用,用于存储和传递与用户会话相关的数据。
以下是通过HttpCookie建立工具类的代码,可根据具体需求调整
- using System;
- using System.Web;
-
- namespace Wing.Framework.Utility
- {
- /// <summary>
- /// Cookie帮助类
- /// </summary>
- public class Cookie
- {
- /// <summary>
- /// 取Cookie
- /// </summary>
- /// <param name="name"></param>
- /// <returns></returns>
- public static HttpCookie Get(string name)
- {
- return HttpContext.Current.Request.Cookies[name];
- }
-
- /// <summary>
- /// 取Cookie值
- /// </summary>
- /// <param name="name"></param>
- /// <returns></returns>
- public static string GetValue(string name)
- {
- var httpCookie = Get(name);
- if (httpCookie != null)
- return httpCookie.Value;
- else
- return string.Empty;
- }
-
- /// <summary>
- /// 移除Cookie
- /// </summary>
- /// <param name="name"></param>
- public static void Remove(string name)
- {
- Cookie.Remove(Cookie.Get(name));
- }
-
- public static void Remove(HttpCookie cookie)
- {
- if (cookie != null)
- {
- cookie.Expires = DateTime.Now;
- Cookie.Save(cookie);
- }
- }
-
- /// <summary>
- /// 保存Cookie
- /// </summary>
- /// <param name="name"></param>
- /// <param name="value"></param>
- /// <param name="expiresHours"></param>
- public static void Save(string name, string value, int expiresHours = 0)
- {
- var httpCookie = Get(name);
- if (httpCookie == null)
- httpCookie = Set(name);
-
- httpCookie.Value = value;
- Cookie.Save(httpCookie, expiresHours);
- }
-
-
- public static void Save(HttpCookie cookie, int expiresHours = 0)
- {
- string domain = Fetch.ServerDomain;
- string urlHost = HttpContext.Current.Request.Url.Host.ToLower();
- if (domain != urlHost)
- cookie.Domain = domain;
-
- if (expiresHours > 0)
- cookie.Expires = DateTime.Now.AddHours(expiresHours);
-
- HttpContext.Current.Response.Cookies.Add(cookie);
- }
-
- public static HttpCookie Set(string name)
- {
- return new HttpCookie(name);
- }
- }
- }

12
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。