System.Web.Caching简单封装类:

 using System;
using System.Collections.Generic;
using System.Web.Caching;
using System.Web;
using System.Collections; namespace APP.HttpCache
{
public class CacheHelper
{
private static Cache cacheObj = HttpRuntime.Cache; /// <summary>
/// 简单key,vlaue写入
/// </summary>
/// <param name="key"></param>
/// <param name="value"></param>
public static void Insert(string key, object value)
{
cacheObj.Insert(key, value);
} /// <summary>
/// 设置绝对过期时间
/// </summary>
/// <param name="key"></param>
/// <param name="value"></param>
/// <param name="absoluteExpiration"></param>
/// <param name="slidingExpiration"></param>
public static void Insert(string key, object value, DateTime absoluteExpiration)
{
cacheObj.Insert(key, value, null, absoluteExpiration, Cache.NoSlidingExpiration);
} /// <summary>
/// 设置平滑过期
/// </summary>
/// <param name="key"></param>
/// <param name="value"></param>
/// <param name="slidingExpiration"></param>
public static void Insert(string key, object value, TimeSpan slidingExpiration)
{
cacheObj.Insert(key, value, null, Cache.NoAbsoluteExpiration, slidingExpiration);
} /// <summary>
/// 得到vlaue
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public static object Get(string key)
{
return cacheObj.Get(key);
} /// <summary>
/// 得到vlaue
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public static T Get<T>(string key)
{
var v = cacheObj.Get(key);
return v == null ? default(T) : (T)Convert.ChangeType(v, typeof(T));
} /// <summary>
/// 移除key
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public static void Delete(string key)
{
cacheObj.Remove(key);
} /// <summary>
/// 移除key
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public static object Remove(string key)
{
return cacheObj.Remove(key);
} /// <summary>
/// 移除key
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public static T Remove<T>(string key)
{
var v = cacheObj.Remove(key);
return v == null ? default(T) : (T)Convert.ChangeType(v, typeof(T));
} /// <summary>
/// 缓存key数量
/// </summary>
public static int KeyCount
{
get
{
return cacheObj.Count;
}
} /// <summary>
/// 所有key
/// </summary>
public static ArrayList KeyAll()
{
var arr = new ArrayList();
var item = cacheObj.GetEnumerator();
while (item.MoveNext())
{
arr.Add(item.Key);
}
return arr;
} /// <summary>
/// 清空所有缓存
/// </summary>
public static void DeleteAll()
{
var item = cacheObj.GetEnumerator();
while (item.MoveNext())
{
cacheObj.Remove(item.Key.ToString());
}
}
}
}

System.Web.Caching的更多相关文章

  1. System.Web.Caching.Cache类 缓存

    1.文件缓存依赖 public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender ...

  2. System.Web.Caching.Cache类 缓存 各种缓存依赖

    原文:System.Web.Caching.Cache类 缓存 各种缓存依赖 Cache类,是一个用于缓存常用信息的类.HttpRuntime.Cache以及HttpContext.Current.C ...

  3. System.Web.Caching.Cache 方法汇总

    在做后台的时候,想着把所有栏目放到缓存里,就这里了一个类.必然是有缺陷,暂时没有实现滑动缓存 using System; using System.Collections; using System. ...

  4. 清除 System.Web.Caching.Cache 以"xxx"开头的缓存

    public static void ClearStartCache(string keyStart) { List<string> cacheKeys = new List<str ...

  5. 第一节:从程序集的角度分析System.Web.Caching.Cache ,并完成基本封装。

    一. 揭开迷雾 1. 程序集准备 a.  需要给项目添加 System.Web 程序集. b.  需要给使用的地方添加两个引用. 2. 程序集探究      在对应的类中输入关键字 Cache,选中点 ...

  6. 深入System.Web.Caching命名空间 教你Hold住缓存管理

    一,System .Web.Caching与缓存工作机制简介 System.Web.Caching是用来管理缓存的命名空间,其父级空间是System.Web,由此可见,缓存通常用于Web网站的开发,包 ...

  7. System.Web.Caching.Cache类 缓存 各种缓存依赖(转)

    转自:http://www.cnblogs.com/kissdodog/archive/2013/05/07/3064895.html Cache类,是一个用于缓存常用信息的类.HttpRuntime ...

  8. System.Web.Caching.Cache类 Asp.Net缓存 各种缓存依赖

    Cache类,是一个用于缓存常用信息的类.HttpRuntime.Cache以及HttpContext.Current.Cache都是该类的实例. 一.属性 属性 说明 Count 获取存储在缓存中的 ...

  9. Cache管理机制(System.Web.Caching)

    一,System .Web.Caching与缓存工作机制简介 System.Web.Caching是用来管理缓存的命名空间,其父级空间是System.Web,由此可见,缓存通常用于Web网站的开发,包 ...

随机推荐

  1. NOIP模拟题 2017.7.3 - 模拟 - 贪心 - 记忆化搜索

    直接暴力模拟,注意判数据结构为空时的取出操作. Code #include<iostream> #include<cstdio> #include<ctime> # ...

  2. 25个c#知识点

    网站地址:http://m.3y.uu456.com/mbp_56hl91r1rx5uqa87qrzo_1.html

  3. Dell Vostro5370安装Win10/Ubuntu18LTS

    如何安装Win10/Ubuntu双系统 测试环境: DELL PRECISION 7510: CPU:Intel Core i5-6300HQ HD:256G NVME SSD 操作步骤: 无损将硬盘 ...

  4. Ansible 入门指南 - ansible-playbook 命令

    上篇文章Ansible 入门指南 - 安装及 Ad-Hoc 命令使用介绍的额是 Ad-Hoc 命令方式,本文将介绍 Playbook 方式. Playbook 译为「剧本」,觉得还挺恰当的. play ...

  5. luoguP2572 [SCOI2010]序列操作

    题目&&链接 反正数据都是一样的,luogu比较友好 luogu bzoj lxhgww最近收到了一个01序列,序列里面包含了n个数,这些数要么是0,要么是1,现在对于这个序列有五种变 ...

  6. java.io.InvalidClassException

    java.io.InvalidClassException public class PetroleumCoke implements Serializable { private static fi ...

  7. org.apache.jasper.JasperException: /WEB-INF/view/../../../common/common1.jsp (line: 7, column: 1) Page directive must not have multiple occurrences of pageencoding

    本文为博主原创,未经允许,不得转载: 先还原错误: org.apache.jasper.JasperException: /WEB-INF/view/../../../../common/common ...

  8. 有关keras(Ubuntu14.04,python2.7)

    第一部分:安装 由于我的电脑之前已经已经配置好了caffe,因此有关python的一切相关包都已经安装完成.因此,即使不用Anaconda安装依然很简单. sudo pip install tenso ...

  9. Java 文件夹递归遍历

    import java.io.File; public class Demo1 { public static void main(String[] args) { File dir=new File ...

  10. 项目中的一个分页功能pagination

    项目中的一个分页功能pagination <script> //总页数 ; ; //分页总数量 $(function () { // $("#pagination"). ...