以下是类:

  1. public class CookieMgr {
  2. #region 快速储存Cookie
  3. /// <summary>
  4. /// 快速储存Cookie
  5. /// </summary>
  6. /// <param name="dt">数据源表</param>
  7. /// <param name="cookieName">Cookie名称</param>
  8. /// <param name="day">过期时间,天</param>
  9. public static void SaveCookie(DataTable dt, string cookieName, int day) {
  10. HttpCookie cookie = new HttpCookie(cookieName);
  11. if (day != )
  12. cookie.Expires = DateTime.Now.AddDays(day);
  13.  
  14. for (int i = ; i < dt.Columns.Count; i++) {
  15. cookie.Values.Add(dt.Columns[i].ColumnName, StringMgr.Encrypt(dt.Rows[][dt.Columns[i].ColumnName].ToString())); //加密
  16. }
  17. HttpContext.Current.Response.AppendCookie(cookie);
  18. }
  19. #endregion
  20.  
  21. #region 初始化一个Cookie
  22. /// <summary>
  23. /// 初始化一个Cookie
  24. /// </summary>
  25. /// <param name="cookieName">cookie名称</param>
  26. /// <param name="day">过期时间,天</param>
  27. public static void InitCookie(string cookieName, int day) {
  28. HttpCookie cookie = new HttpCookie(cookieName);
  29. if (day != )
  30. cookie.Expires = DateTime.Now.AddDays(day);
  31.  
  32. cookie.Values.Add("initExpires", StringMgr.Encrypt(day.ToString()));
  33. HttpContext.Current.Response.Cookies.Add(cookie);
  34. }
  35. #endregion
  36.  
  37. #region 设置Cookie的其中一个值,如果键存在则覆盖以前的键值
  38. /// <summary>
  39. /// 附加一个Cookie的值,如果键值存在则覆盖以前的键值
  40. /// </summary>
  41. /// <param name="cookieName">Cookie名称</param>
  42. /// <param name="key">需附加的键</param>
  43. /// <param name="value">需附加的值</param>
  44. public static void SetCookie(string cookieName, string key, string value) {
  45. HttpCookie cookie = null;
  46. if (HttpContext.Current.Request.Cookies[cookieName] != null) {
  47. cookie = HttpContext.Current.Request.Cookies[cookieName];
  48. } else
  49. cookie = new HttpCookie(cookieName);
  50.  
  51. bool b = false;
  52. for (int i = ; i < cookie.Values.Keys.Count; i++) {
  53. if (cookie.Values.Keys[i] == key) {
  54. b = true;
  55. break;
  56. }
  57. }
  58. value = StringMgr.Encrypt(value);
  59. if (b)
  60. cookie.Values[key] = value;
  61. else
  62. cookie.Values.Add(key, value);
  63.  
  64. for (int i = ; i < cookie.Values.Keys.Count; i++) {
  65. if (cookie.Values.Keys[i] == "initExpires") {
  66. cookie.Expires = DateTime.Now.AddDays(int.Parse(StringMgr.Decrypt(cookie.Values["initExpires"].ToString())));
  67. break;
  68. }
  69. }
  70.  
  71. HttpContext.Current.Response.Cookies.Add(cookie);
  72. }
  73. #endregion
  74.  
  75. #region 读取Cookie的其中一个值
  76. /// <summary>
  77. /// 读取Cookie的其中一个值
  78. /// </summary>
  79. /// <param name="cookieName">Cookie名称</param>
  80. /// <param name="key">需读取的键</param>
  81. /// <returns>返回名为【CookieName】键为【key】的值</returns>
  82. public static string GetCookie(string cookieName, string key) {
  83. HttpCookie cookie = HttpContext.Current.Request.Cookies[cookieName];
  84. if (cookie != null && cookie.Values[key] != null)
  85. return StringMgr.Decrypt(cookie.Values[key].ToString());
  86. else
  87. return Param.CookieErrorString;
  88. }
  89. #endregion
  90.  
  91. #region 移除Cookie的其中一个值
  92. /// <summary>
  93. /// 移除Cookie的其中一个值
  94. /// </summary>
  95. /// <param name="cookieName">Cookie名称</param>
  96. /// <param name="key">需附加的键</param>
  97. public static void RemoveCookie(string cookieName, string key) {
  98. HttpCookie cookie = null;
  99. if (HttpContext.Current.Request.Cookies[cookieName] != null)
  100. cookie = HttpContext.Current.Request.Cookies[cookieName];
  101. else
  102. cookie = new HttpCookie(cookieName);
  103.  
  104. bool b = false;
  105. for (int i = ; i < cookie.Values.Keys.Count; i++) {
  106. if (cookie.Values.Keys[i] == key) {
  107. b = true;
  108. break;
  109. }
  110. }
  111. if (b)
  112. cookie.Values.Remove(key);
  113.  
  114. for (int i = ; i < cookie.Values.Keys.Count; i++) {
  115. if (cookie.Values.Keys[i] == "initExpires") {
  116. cookie.Expires = DateTime.Now.AddDays(int.Parse(StringMgr.Decrypt(cookie.Values["initExpires"].ToString())));
  117. break;
  118. }
  119. }
  120. HttpContext.Current.Response.Cookies.Add(cookie);
  121. }
  122. #endregion
  123.  
  124. #region 清空Cookie
  125. /// <summary>
  126. /// 清空Cookie
  127. /// </summary>
  128. /// <param name="cookieName">Cookie名称</param>
  129. public static void ClearCookie(string cookieName) {
  130. System.Web.HttpCookie cookie = new System.Web.HttpCookie(cookieName);
  131. cookie.Expires = System.DateTime.Now.AddYears(-);
  132. System.Web.HttpContext.Current.Response.AppendCookie(cookie);
  133. }
  134. #endregion
  135.  
  136. #region 得到Cookie的集合
  137. /// <summary>
  138. /// 得到Cookie的集合
  139. /// </summary>
  140. /// <param name="cookieName">Cookie名称</param>
  141. /// <returns>返回Cookie的集合</returns>
  142. public static NameValueCollection GetCookieValues(string cookieName) {
  143. if (HttpContext.Current.Request.Cookies[cookieName] != null) {
  144. HttpCookie cookie = HttpContext.Current.Request.Cookies[cookieName];
  145. return cookie.Values;
  146. } else
  147. return null;
  148. }
  149. #endregion
  150. }

保存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. C#学习笔记(12)——三种方法操作XML

    说明(2017-7-11 16:56:13): 原文地址: C#中常用的几种读取XML文件的方法 XML文件是一种常用的文件格式,例如WinForm里面的app.config以及Web程序中的web. ...

  2. [转]java按指定编码写入和读取文件内容的类

    读文件: BufferedReader 从字符输入流中读取文本,缓冲各个字符,从而提供字符.数组和行的高效读取. 可以指定缓冲区的大小,或者可使用默认的大小.大多数情况下,默认值就足够大了. 通常,R ...

  3. hystrix服务降级和服务熔断的区别

    故事的背景是这样的:由于小强在工作中碰到一些问题,于是想请教一下业界大牛小壮.于是发生了下面的两个场景: 小强在拿起常用手机拨号时发现该手机没有能够拨通,所以就拿出了备用手机拨通了某A的电话,这个过程 ...

  4. win7下memCache安装过程

    1.下载memcache 的windows 稳定版,解压放某个盘下面,比如在H:/wamp/www/php api/memcache: 2.在终端(即cmd 命令界面)下,输入安装命令 :H:/wam ...

  5. C语言 · 算年龄

    算年龄 英国数学家德摩根出生于19世纪初叶(即18xx年). 他年少时便很有才华.一次有人问他的年龄,他回答说: “到了x的平方那年,我刚好是x岁”. 请你计算一下,德摩根到底出生在哪一年. 题中的年 ...

  6. [shell]shell 中| && || () {} 用法以及shell的逻辑与或非

    转自:https://www.jianshu.com/p/617c1ee1e46e | 运算符 管道符号,是unix一个很强大的功能,符号为一条竖线:"|".用法: command ...

  7. winsock.h与winsock2.h出现重定义或不同的链接

    经常遇到编译socket程序的时候生成几百个错误 以下是出错后的错误信息: >c:\program files\microsoft sdks\windows\v6.0a\include\ws2d ...

  8. jQuery笔记二——基础/动画

    1. jQuery的基础语法: $(selector).action() 2. 很多jQuery的语句放在ready里面 $(document).ready(function(){ // jQuery ...

  9. PCL行人检测

    首先我们知道Hog特征结合SVM分类器已经被广泛应用于图像识别中,尤其在行人检测中获得了极大的成功,HOG+SVM进行行人检测的方法是法国研究人员Dalal在2005的CVPR上提出的,而如今虽然有很 ...

  10. Android 开发 打开默认浏览器发生崩溃

    Android 开发 打开默认浏览器发生崩溃. 代码如下: Intent intent = new Intent(); intent.setAction("Android.intent.ac ...