CookieHelper.cs(20170223)

本文介绍了一个C#中用于操作HTTP Cookie的辅助类CookieHelper。该类提供了设置、获取和删除Cookie的方法,并展示了如何使用这些方法来管理网站用户的会话。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;

namespace System.CRM.Common
{
    /// <summary>
    /// Cookie操作助手类
    /// </summary>
    public class CookieHelper
    {
        /// <summary>
        /// 设置一个Cookie(一天超时)
        /// </summary>
        /// <param name="key">Cookie的Key值</param>
        /// <param name="value">Cookie的Value值</param>
        public static void SetCookie(string key, string value)
        {
            SetCookie(HttpContext.Current.Response, key, value, DateTime.Now.AddDays(1));
        }

        /// <summary>
        /// 设置一个Cookie
        /// </summary>
        /// <param name="key">Cookie的Key值</param>
        /// <param name="value">Cookie的Value值</param>
        /// <param name="expires">Cookie的超时时间</param>
        public static void SetCookie(string key, string value, DateTime expires)
        {
            SetCookie(HttpContext.Current.Response, key, value, expires);
        }

        /// <summary>
        /// 移除Cookie
        /// </summary>
        /// <param name="key">Cookie的Key值</param>
        public static void RemoveCookie(string key)
        {
            SetCookie(HttpContext.Current.Response, key, null, DateTime.Now.AddMinutes(-1));
        }

        /// <summary>
        /// 获取Cookie值(查)
        /// </summary>
        /// <param name="key">Cookie的Key值</param>
        /// <returns>Cookie的Value值</returns>
        public static string GetCookie(string key)
        {
            return GetCookie(HttpContext.Current.Request, key);
        }

        /// <summary>
        /// 设置一个Cookie(增删改)
        /// </summary>
        /// <param name="response">当前 HTTP 响应的 System.Web.HttpResponse 对象</param>
        /// <param name="key">Cookie的Key值</param>
        /// <param name="value">Cookie的Value值</param>
        /// <param name="expires">Cookie的超时时间</param>
        private static void SetCookie(HttpResponse response, string key, string value, DateTime expires)
        {
            HttpCookie cookie = new HttpCookie(key)
            {
                Value = value,
                Expires = expires
            };
            response.Cookies.Add(cookie);
        }

        /// <summary>
        /// 获取Cookie值(查)
        /// </summary>
        /// <param name="request">当前 HTTP 请求的 System.Web.HttpRequest 对象</param>
        /// <param name="key">Cookie的Key值</param>
        /// <returns>Cookie的Value值</returns>
        private static string GetCookie(HttpRequest request, string key)
        {
            HttpCookie cookie = request.Cookies[key];
            return cookie != null ? cookie.Value : null;
        }
    }
}

 

转载于:https://www.cnblogs.com/zyx321/p/6435898.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值