System.Web.Caching

2018-06-27 09:55:12来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

System.Web.Caching简单封装类:

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Web.Caching;
  4 using System.Web;
  5 using System.Collections;
  6 
  7 namespace APP.HttpCache
  8 {
  9     public class CacheHelper
 10     {
 11         private static Cache cacheObj = HttpRuntime.Cache;
 12 
 13         /// <summary>
 14         /// 简单key,vlaue写入
 15         /// </summary>
 16         /// <param name="key"></param>
 17         /// <param name="value"></param>
 18         public static void Insert(string key, object value)
 19         {
 20             cacheObj.Insert(key, value);
 21         }
 22 
 23         /// <summary>
 24         /// 设置绝对过期时间
 25         /// </summary>
 26         /// <param name="key"></param>
 27         /// <param name="value"></param>
 28         /// <param name="absoluteExpiration"></param>
 29         /// <param name="slidingExpiration"></param>
 30         public static void Insert(string key, object value, DateTime absoluteExpiration)
 31         {
 32             cacheObj.Insert(key, value, null, absoluteExpiration, Cache.NoSlidingExpiration);
 33         }
 34 
 35         /// <summary>
 36         /// 设置平滑过期
 37         /// </summary>
 38         /// <param name="key"></param>
 39         /// <param name="value"></param>
 40         /// <param name="slidingExpiration"></param>
 41         public static void Insert(string key, object value, TimeSpan slidingExpiration)
 42         {
 43             cacheObj.Insert(key, value, null, Cache.NoAbsoluteExpiration, slidingExpiration);
 44         }
 45 
 46         /// <summary>
 47         /// 得到vlaue
 48         /// </summary>
 49         /// <param name="key"></param>
 50         /// <returns></returns>
 51         public static object Get(string key)
 52         {
 53             return cacheObj.Get(key);
 54         }
 55 
 56         /// <summary>
 57         /// 得到vlaue
 58         /// </summary>
 59         /// <param name="key"></param>
 60         /// <returns></returns>
 61         public static T Get<T>(string key)
 62         {
 63             var v = cacheObj.Get(key);
 64             return v == null ? default(T) : (T)Convert.ChangeType(v, typeof(T));
 65         }
 66 
 67         /// <summary>
 68         /// 移除key
 69         /// </summary>
 70         /// <param name="key"></param>
 71         /// <returns></returns>
 72         public static void Delete(string key)
 73         {
 74             cacheObj.Remove(key);
 75         }
 76 
 77         /// <summary>
 78         /// 移除key
 79         /// </summary>
 80         /// <param name="key"></param>
 81         /// <returns></returns>
 82         public static object Remove(string key)
 83         {
 84             return cacheObj.Remove(key);
 85         }
 86 
 87         /// <summary>
 88         /// 移除key
 89         /// </summary>
 90         /// <param name="key"></param>
 91         /// <returns></returns>
 92         public static T Remove<T>(string key)
 93         {
 94             var v = cacheObj.Remove(key);
 95             return v == null ? default(T) : (T)Convert.ChangeType(v, typeof(T));
 96         }
 97 
 98         /// <summary>
 99         /// 缓存key数量
100         /// </summary>
101         public static int KeyCount
102         {
103             get
104             {
105                 return cacheObj.Count;
106             }
107         }
108 
109         /// <summary>
110         /// 所有key
111         /// </summary>
112         public static ArrayList KeyAll()
113         {
114             var arr = new ArrayList();
115             var item = cacheObj.GetEnumerator();
116             while (item.MoveNext())
117             {
118                 arr.Add(item.Key);
119             }
120             return arr;
121         }
122 
123         /// <summary>
124         /// 清空所有缓存
125         /// </summary>
126         public static void DeleteAll()
127         {
128             var item = cacheObj.GetEnumerator();
129             while (item.MoveNext())
130             {
131                 cacheObj.Remove(item.Key.ToString());
132             }
133         }
134     }
135 }
View Code

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:(转)vs2010 vs2013等vs中如何统计整个项目的代码行数

下一篇:二、MVC3+EF单表增删改查