以下是类:

   public class CookieMgr {
#region 快速储存Cookie
/// <summary>
/// 快速储存Cookie
/// </summary>
/// <param name="dt">数据源表</param>
/// <param name="cookieName">Cookie名称</param>
/// <param name="day">过期时间,天</param>
public static void SaveCookie(DataTable dt, string cookieName, int day) {
HttpCookie cookie = new HttpCookie(cookieName);
if (day != )
cookie.Expires = DateTime.Now.AddDays(day); for (int i = ; i < dt.Columns.Count; i++) {
cookie.Values.Add(dt.Columns[i].ColumnName, StringMgr.Encrypt(dt.Rows[][dt.Columns[i].ColumnName].ToString())); //加密
}
HttpContext.Current.Response.AppendCookie(cookie);
}
#endregion #region 初始化一个Cookie
/// <summary>
/// 初始化一个Cookie
/// </summary>
/// <param name="cookieName">cookie名称</param>
/// <param name="day">过期时间,天</param>
public static void InitCookie(string cookieName, int day) {
HttpCookie cookie = new HttpCookie(cookieName);
if (day != )
cookie.Expires = DateTime.Now.AddDays(day); cookie.Values.Add("initExpires", StringMgr.Encrypt(day.ToString()));
HttpContext.Current.Response.Cookies.Add(cookie);
}
#endregion #region 设置Cookie的其中一个值,如果键存在则覆盖以前的键值
/// <summary>
/// 附加一个Cookie的值,如果键值存在则覆盖以前的键值
/// </summary>
/// <param name="cookieName">Cookie名称</param>
/// <param name="key">需附加的键</param>
/// <param name="value">需附加的值</param>
public static void SetCookie(string cookieName, string key, string value) {
HttpCookie cookie = null;
if (HttpContext.Current.Request.Cookies[cookieName] != null) {
cookie = HttpContext.Current.Request.Cookies[cookieName];
} else
cookie = new HttpCookie(cookieName); bool b = false;
for (int i = ; i < cookie.Values.Keys.Count; i++) {
if (cookie.Values.Keys[i] == key) {
b = true;
break;
}
}
value = StringMgr.Encrypt(value);
if (b)
cookie.Values[key] = value;
else
cookie.Values.Add(key, value); for (int i = ; i < cookie.Values.Keys.Count; i++) {
if (cookie.Values.Keys[i] == "initExpires") {
cookie.Expires = DateTime.Now.AddDays(int.Parse(StringMgr.Decrypt(cookie.Values["initExpires"].ToString())));
break;
}
} HttpContext.Current.Response.Cookies.Add(cookie);
}
#endregion #region 读取Cookie的其中一个值
/// <summary>
/// 读取Cookie的其中一个值
/// </summary>
/// <param name="cookieName">Cookie名称</param>
/// <param name="key">需读取的键</param>
/// <returns>返回名为【CookieName】键为【key】的值</returns>
public static string GetCookie(string cookieName, string key) {
HttpCookie cookie = HttpContext.Current.Request.Cookies[cookieName];
if (cookie != null && cookie.Values[key] != null)
return StringMgr.Decrypt(cookie.Values[key].ToString());
else
return Param.CookieErrorString;
}
#endregion #region 移除Cookie的其中一个值
/// <summary>
/// 移除Cookie的其中一个值
/// </summary>
/// <param name="cookieName">Cookie名称</param>
/// <param name="key">需附加的键</param>
public static void RemoveCookie(string cookieName, string key) {
HttpCookie cookie = null;
if (HttpContext.Current.Request.Cookies[cookieName] != null)
cookie = HttpContext.Current.Request.Cookies[cookieName];
else
cookie = new HttpCookie(cookieName); bool b = false;
for (int i = ; i < cookie.Values.Keys.Count; i++) {
if (cookie.Values.Keys[i] == key) {
b = true;
break;
}
}
if (b)
cookie.Values.Remove(key); for (int i = ; i < cookie.Values.Keys.Count; i++) {
if (cookie.Values.Keys[i] == "initExpires") {
cookie.Expires = DateTime.Now.AddDays(int.Parse(StringMgr.Decrypt(cookie.Values["initExpires"].ToString())));
break;
}
}
HttpContext.Current.Response.Cookies.Add(cookie);
}
#endregion #region 清空Cookie
/// <summary>
/// 清空Cookie
/// </summary>
/// <param name="cookieName">Cookie名称</param>
public static void ClearCookie(string cookieName) {
System.Web.HttpCookie cookie = new System.Web.HttpCookie(cookieName);
cookie.Expires = System.DateTime.Now.AddYears(-);
System.Web.HttpContext.Current.Response.AppendCookie(cookie);
}
#endregion #region 得到Cookie的集合
/// <summary>
/// 得到Cookie的集合
/// </summary>
/// <param name="cookieName">Cookie名称</param>
/// <returns>返回Cookie的集合</returns>
public static NameValueCollection GetCookieValues(string cookieName) {
if (HttpContext.Current.Request.Cookies[cookieName] != null) {
HttpCookie cookie = HttpContext.Current.Request.Cookies[cookieName];
return cookie.Values;
} else
return null;
}
#endregion
}

保存DT到cookie

ookieMgr.SaveCookie(dt, "名称", 0);

获取cookie key值

CookieMgr.GetCookie("名称", "姓名");

asp.net操作cookie类,包含datatable批量存入cookie的更多相关文章

  1. MySQL数据库工具类之——DataTable批量加入MySQL数据库(Net版)

    MySQL数据库工具类之——DataTable批量加入数据库(Net版),MySqlDbHelper通用类希望能对大家有用,代码如下: using MySql.Data.MySqlClient; us ...

  2. ASP.NET MVC NPOI导入Excel DataTable批量导入到数据库

    使用NPOI导入Excel 首先在MVC项目中导入NPOI 查询NPOI安装,排序依据,选择:最高下载量,选择第一个. 在控制器中创建ExcelController 在Index视图中写入代码: @u ...

  3. Cookie的使用、Cookie详解、HTTP cookies 详解、获取cookie的方法、客户端获取Cookie、深入解析cookie

    Cookie是指某些网站为了辨别用户身份.进行session跟踪而存储在用户本地终端上的数据(通常经过加密),比如说有些网站需要登录才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的.那么我 ...

  4. .net使用SqlBulkCopy类操作DataTable批量插入数据库数据,然后分页查询坑

    在使用SqlBulkCopy类操作DataTable批量插入数据,这种操作插入数据的效率很高,就会导致每一条数据在保存的时间基本一样,在我们分页查询添加的数据是,使用数据的添加时间来排序就会出现每页的 ...

  5. asp.net操作cookie类

    using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary ...

  6. 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 ...

  7. ASP.NET 操作Cookie详解 增加,修改,删除

    ASP.NET 操作Cookie详解 增加,修改,删除 Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份而储存在用户本地终端上的数据(通常经过加密).定义于RFC2109.它 ...

  8. 非常不错的ASP操作数据库类,支持多数据库MSSQL,ACCESS,ORACLE,MYSQL等

    可同时操作多个不同类型的数据库. 完全不用考虑数据类型的差别,再也不用想字符型字段加不加单引号. 调用非常简单,对数据库的主要操作一般只需要一行代码. 支持mssql事务回滚. 可自动生成和输出sql ...

  9. ASP.NET操作Cookie

    1.生成Cookie public static void SetDataByCookie(string mainKey, string subKey, string value, string do ...

随机推荐

  1. mysql 常用指令集合

    show variables ——显示系统变量(扩展show variables like 'XXX') 在MYSQL的主从复制中 ,通过命令show  master status,可以查看maste ...

  2. java基础篇---I/O技术(二)

    接着上篇http://www.cnblogs.com/oumyye/p/4314412.html java I/O流---内存操作流 ByteArrayInputStream和ByteArrayOut ...

  3. 【微信小程序】下拉刷新真机测试无效

    根据文档的描述,做上拉加载时直接实现页面的onReachBottom()函数即可.但是要做下拉刷新时,除了实现onPullDownRefresh()函数外,还必须要在app.json中配置开启enab ...

  4. (转载)WPF中的动画——(一)基本概念

    http://www.cnblogs.com/TianFang/p/4050845.html WPF的一个特点就是支持动画,我们可以非常容易的实现漂亮大方的界面.首先,我们来复习一下动画的基本概念.计 ...

  5. virtualbox 安装 USB 扩展功能

    virtualbox USB 扩展包下载 扩展包下载地址: http://download.virtualbox.org/virtualbox/ 选择你的 virtualbox 版本 看版本在 vir ...

  6. [lsof]lsof查看哪些设备/文件被占用或者打开

    转自:http://blog.csdn.net/yuzhihui_no1/article/details/51767516 最近在查一个Bug,应用程序kill之后重启,总是会出现adc的设备open ...

  7. FutureTask 源码分析

    FutureTask 源码分析,这个类的原理与我分析android当中的FutureTask类差不多[http://www.cnblogs.com/daxin/p/3802392.html] publ ...

  8. 设置一个按钮为一个图片,不要border

    //设置一个按钮为一个图片,不要border ImageIcon searchIcon = ImageToolkit.loadImageIcon(/search.png"); ImageIc ...

  9. SpringBoot2 全局异常处理

    参考这篇文章里面的几种异常形式: 全局异常处理是个比较重要的功能,一般在项目里都会用到. 大概把一次请求分成三个阶段,来分别进行全局的异常处理. 一:在进入Controller之前,譬如请求一个不存在 ...

  10. Spring配置文件<context:property-placeholder>标签使用漫谈

    <context:property-placeholder>标签提供了一种优雅的外在化参数配置的方式,不过该标签在Spring配置文件中只能存在一份!!! 众所周知,Spring容器是采用 ...