asp.net操作cookie类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
/// <summary>
///CookiesSel 的摘要说明
/// </summary>
public class CookiesSel
{
public CookiesSel()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
private static HttpResponse respone = HttpContext.Current.Response;
private static HttpRequest requst = HttpContext.Current.Request;
/// <summary>
/// 添加cookie并写入value
/// </summary>
/// <param name="cookName">新建的cookie的名称</param>
/// <param name="cookValue">新建的cookie的值</param>
/// <param name="expriTime">cookie的有效期以天为单位,-2表示不设置有效期</param>
public static void AddCookies(string cookName, string cookValue, double expriTime)
{
if (requst.Cookies[cookName] != null)
{
DelCookies(cookName);
}
HttpCookie cook = new HttpCookie(cookName);
if (expriTime != -2)
cook.Expires = DateTime.Now.AddDays(expriTime);
cook.Value = cookValue;
respone.AppendCookie(cook);
}
/// <summary>
/// 添加有键值的cookie
/// </summary>
/// <param name="cookName">cookie的名称</param>
/// <param name="key">cookie内键值的名称</param>
/// <param name="keyValue">cookie的键值value</param>
/// <param name="expritime">cookie的有效期以天为单位,-2表示不设置有效期</param>
public static void AddCookies(string cookName, string key, string keyValue, double expritime)
{
HttpCookie cook = new HttpCookie(cookName);
if (!string.IsNullOrEmpty(key))
cook.Values.Add(key, keyValue);
if (expritime != -2)
cook.Expires = DateTime.Now.AddDays(expritime);
respone.AppendCookie(cook);
}
/// <summary>
/// 设置cookie的有效期过期(删除cookie)
/// </summary>
/// <param name="cookName">要设置的cookie的名称</param>
public static void DelCookies(string cookName)
{
DelCookiesValue(cookName, null);
}
/// <summary>
/// 删除cookie或者删除cookie的键值
/// </summary>
/// <param name="cookName">cookie的名称</param>
/// <param name="key">键值的名称(如果为NULL则运行删除cookie的代码,否则运行删除cookie中的键值的代码)</param>
public static void DelCookiesValue(string cookName, string key)
{
HttpCookie cook = requst.Cookies[cookName];
if (cook != null)
{
if (!string.IsNullOrEmpty(key) && cook.HasKeys)
{
if (cook.Values.Count <= 1)
cook.Expires = DateTime.Now.AddDays(-1);
else
cook.Values.Remove(key);
respone.AppendCookie(cook);
}
else
{
cook.Expires = DateTime.Now.AddDays(-1);
respone.AppendCookie(cook);
}
}
}
/// <summary>
/// 获取cookie的值
/// </summary>
/// <param name="cookName">cookie的名称</param>
/// <returns>返回cookie的值,如果不存在cookie则返回NULL</returns>
public static string GetCookieValue(string cookName)
{
return GetCookieOrKeyValue(cookName, null);
}
/// <summary>
/// 获取cookie的值或cookie的键值
/// </summary>
/// <param name="cookName">cookie的名称</param>
/// <param name="keyName">cookie内键值的名称(NULL代表获取cookie的值)</param>
/// <returns>返回cookie的值或者键值,如果不存在cookie则返回NULL</returns>
public static string GetCookieOrKeyValue(string cookName, string keyName)
{
HttpCookie cook = requst.Cookies[cookName];
if (cook != null)
{
if (!string.IsNullOrEmpty(keyName) && cook.HasKeys)
return cook.Values[keyName].ToString();
else
return cook.Value.ToString();
}
else
return null;
}
}
asp.net操作cookie类的更多相关文章
- asp.net操作cookie类,包含datatable批量存入cookie
以下是类: public class CookieMgr { #region 快速储存Cookie /// <summary> /// 快速储存Cookie /// </summar ...
- ASP.NET 操作Cookie详解 增加,修改,删除
ASP.NET 操作Cookie详解 增加,修改,删除 Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份而储存在用户本地终端上的数据(通常经过加密).定义于RFC2109.它 ...
- Asp.net操作cookie大全
实例代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 3 ...
- ASP.NET操作Cookie
1.生成Cookie public static void SetDataByCookie(string mainKey, string subKey, string value, string do ...
- C# 操作Cookie类
1.Cookie操作类 using System; using System.Data; using System.Configuration;using System.Web;using Syste ...
- asp.net5 操作Cookie
写入Cookie var CookieOption = new CookieOptions(); CookieOption.Path = "/"; //on localhost, ...
- ASP.NET 操作Cookie详解 增加,修改,删除
Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份而储存在用户本地终端上的数据(通常经过加密).定义于RFC2109.它是网景公司的前雇员Lou Montulli在1993年3 ...
- 【基础】Asp.Net操作Cookie总结
一.什么是Cookie? Cookie是存储在客户端文件系统的文本文件或客户端浏览器对话的内存中的少量数据.它主要用来跟踪数据设置,例如:当我们要访问一个网站网页的时候,用户请求网页时,应用程序可能会 ...
- 非常不错的ASP操作数据库类,支持多数据库MSSQL,ACCESS,ORACLE,MYSQL等
可同时操作多个不同类型的数据库. 完全不用考虑数据类型的差别,再也不用想字符型字段加不加单引号. 调用非常简单,对数据库的主要操作一般只需要一行代码. 支持mssql事务回滚. 可自动生成和输出sql ...
随机推荐
- 【技术贴】解决使用maven jetty启动后无法加载修改过后的静态资源
如何使用jetty自动热部署修改后的所有文件,比如js,jpg,class等,哇咔咔 太爽啦比tomcat舒服多了. jetty模式是不能修改js文件的,比如你现在调试前端js,发现在myeclips ...
- cf D. Physical Education and Buns
http://codeforces.com/contest/394/problem/D 题意:给你n个数,然后通过操作使得这n个数变为一个等差数列,操作是可以经过小于等于k次加1或减去1,要使得k尽量 ...
- 有趣的TWinControl.RecreateWnd,并分析在哪些场合使用
CM_RECREATEWND = CM_BASE + 51; // TWinControl里有对应函数procedure CMRecreateWnd(var Message: TMessage); m ...
- 整整68页学习C++的文章
有空看看,有不少好东西: http://dev.21tx.com/language/c/index.shtml
- 我的VSTO之路(四):深入介绍Word开发
原文:我的VSTO之路(四):深入介绍Word开发 在上一篇文章中,我介绍了Word的对象模型和一些基本开发技巧.为了更好的介绍Word插件开发,我为本文制作了一个Word书签的增强版,具体功能是让用 ...
- C# DataGridView 导出 Excel(根据Excel版本显示选择不同后缀格式xls或xlsx)
/// <summary> /// DataGridView导出至Excel,解决问题:打开Excel文件格式与扩展名指定格式不一致 /// </summary> /// &l ...
- 【模拟】Codeforces 699A Launch of Collider
题目链接: http://codeforces.com/problemset/problem/699/A 题目大意: 给N个点,向左或向右运动,速度均为1,问最早什么时候有两个点相撞.无解输出-1 题 ...
- Simplify Path——LeetCode
Given an absolute path for a file (Unix-style), simplify it. For example,path = "/home/", ...
- 用phpQuery像jquery一样解析html代码
简介 如何在php中方便地解析html代码,估计是每个phper都会遇到的问题.用phpQuery就可以让php处理html代码像jQuery一样方便. 项目地址:https://code.googl ...
- 使用IntelliJ IDEA开发SpringMVC网站
连接:https://my.oschina.net/gaussik/blog/385697