zoukankan      html  css  js  c++  java
  • CookieHelper

    using System;
    using System.Web;

    namespace MingYu.Utility
    {
    /// <summary>
    /// Cookie帮助类
    /// </summary>
    public class CookieHelper
    {
    /// <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>
    /// <param name="key"></param>
    /// <returns></returns>
    public static string GetValue(string name, string key)
    {
    var httpCookie = Get(name);
    if (httpCookie != null)
    return httpCookie.Values[key];
    else
    return string.Empty;
    }

    /// <summary>
    /// 移除Cookie
    /// </summary>
    /// <param name="name"></param>
    public static void Remove(string name)
    {
    Remove(Get(name));
    }

    public static void Remove(HttpCookie cookie)
    {
    if (cookie != null)
    {
    cookie.Expires = DateTime.Now.AddDays(-1);
    Set(cookie);
    }
    }

    /// <summary>
    /// 新增Cookie
    /// </summary>
    /// <param name="name"></param>
    /// <param name="value"></param>
    /// <param name="expiresHours"></param>
    public static void Add(string name, string value, int expiresHours = 0)
    {
    var httpCookie = Get(name);
    if (httpCookie == null)
    httpCookie = Set(name);

    httpCookie.Value = value;
    Add(httpCookie, expiresHours: expiresHours);
    }

    /// <summary>
    /// 新增Cookie
    /// </summary>
    /// <param name="cookie"></param>
    /// <param name="expiresHours"></param>
    public static void Add(HttpCookie cookie, int expiresHours = 0, int minutes = 0)
    {
    string urlHost = HttpContext.Current.Request.Url.Host.ToLower();
    var expiresTime = DateTime.Now;
    if (expiresHours > 0)
    {
    expiresTime = expiresTime.AddHours(expiresHours);
    }
    if (minutes > 0)
    {
    expiresTime = expiresTime.AddMinutes(minutes);
    }
    if (expiresHours > 0 || minutes > 0)
    {
    cookie.Expires = expiresTime;
    }
    HttpContext.Current.Response.Cookies.Add(cookie);
    }

    public static HttpCookie Set(string name)
    {
    return new HttpCookie(name);
    }

    /// <summary>
    /// 更新Cookie
    /// </summary>
    /// <param name="cookie"></param>
    /// <param name="expiresHours"></param>
    public static void Set(HttpCookie cookie, int expiresHours = 0)
    {
    if (expiresHours > 0)
    cookie.Expires = DateTime.Now.AddHours(expiresHours);

    HttpContext.Current.Response.Cookies.Set(cookie);
    }
    }
    }

  • 相关阅读:
    20170705总结
    20170703总结
    .NET 框架程序使用 Win32 API
    青春 就此别过
    Aptana Studio 2启动时提示 Workspace Cannot Be Created 解决办法
    App_GlobalResources.afvubzdv.resources.dll”--“拒绝访问。“
    c# 一维数组和二维数组的定义几种方式<转>.
    C#中Split分隔字符串的应用(C#、split、分隔、字符串)<转>
    C#操作字符串方法总结<转>
    C# 时间格式大全
  • 原文地址:https://www.cnblogs.com/zlj-rechio/p/cookie.html
Copyright © 2011-2022 走看看