using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.Caching; namespace Utility
{
/// <summary>
/// 缓存操作,默认缓存1分钟
/// </summary>
public static class CacheHelper
{
static int cacheTime = 1; /// <summary>
/// 读取缓存项
/// </summary>
/// <returns></returns>
public static object CacheReader(string cacheKey)
{
return HttpRuntime.Cache[cacheKey];
} /// <summary>
/// 写入缓存项
/// </summary>
public static void CacheWriter(string cacheKey, object cacheValue, int cache_time = 0)
{
HttpRuntime.Cache.Insert(cacheKey, cacheValue, null,
DateTime.Now.AddMinutes(cache_time <= 0 ? cacheTime : cache_time),
Cache.NoSlidingExpiration);
} /// <summary>
/// 移除指定缓存项
/// </summary>
public static void CacheRemove(string cacheName)
{
HttpRuntime.Cache.Remove(cacheName);
} /// <summary>
/// 缓存对象泛型实现
/// </summary>
public static T ObjectReader<T>(string cacheKey = null)
where T : class
{
string cachekey = typeof(T).GetHashCode() + StringHelper.ToString(cacheKey);
var obj = CacheReader(cachekey) as T;
return obj;
} /// <summary>
/// 缓存对象泛型实现
/// </summary>
public static void ObjectWriter<T>(T cacheValue, string cacheKey = null, int cache_time = 0)
where T : class
{
string cachekey = typeof (T).GetHashCode() + StringHelper.ToString(cacheKey);
CacheWriter(cachekey, cacheValue, cache_time);
}
}
}

  

C# 缓存操作类的更多相关文章

  1. 封装php redis缓存操作类

    封装php redis缓存操作类,集成了连接redis并判断连接是否成功,redis数据库选择,检测redis键是否存在,获取值,写入值,设置生存时间和删除清空操作. php redis类代码: &l ...

  2. 3.NetDh框架之缓存操作类和二次开发模式简单设计(附源码和示例代码)

    前言 NetDh框架适用于C/S.B/S的服务端框架,可用于项目开发和学习.目前包含以下四个模块 1.数据库操作层封装Dapper,支持多种数据库类型.多库实例,简单强大: 此部分具体说明可参考博客: ...

  3. C#语法糖之 cache操作类 asp.net

    因为考虑到我下面我将写session cookies 等 操作类 ,与cache具有共性. 所以都统一继承了IHttpStorageObject  abstract class 来保函数风格的统一 , ...

  4. Cache操作类

    封装类: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...

  5. [Cache] C#操作缓存--CacheHelper缓存帮助类 (转载)

    点击下载 CacheHelper.zip CacheHelper 缓存帮助类 C#怎么操作缓存 怎么设置和取缓存数据,都在这个类里面呢 下面看一下代码吧 /// <summary> /// ...

  6. PHP 数据库操作类:ezSQL

    EZSQL类介绍: 下载地址:http://www.jb51.net/codes/26393.htmlezsql是一个小型的快速的数据库操作类,可以让你很容易地用PHP操作各种数据库( MySQL.o ...

  7. 【代码笔记】iOS-缓存路径操作类

    一,代码. AppDelegate.h #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplica ...

  8. thrift之TTransport层的缓存传输类TBufferedTransport和缓冲基类TBufferBase

    本节主要介绍缓冲相关的传输类,缓存的作用就是为了提高读写的效率.Thrift在实现缓存传输的时候首先建立一个缓存的基类,然后需要实现缓存功能的类都可以直接从这个基类继承.下面就详细分析这个基类以及一个 ...

  9. C#语法糖之Cookies操作类 asp.net

    用法: //声名一个数据集合 var listString = new List<string>() { "a", "b", "c&quo ...

随机推荐

  1. Linux下java nohup 后台运行关闭后进程停止的原因,不挂断后台运行命令

    Linux下java nohup 后台运行关闭后进程停止的原因,不挂断后台运行命令 今天写sh脚本发现一终止命令程序就停止运行了,检查了很久才发现后面少了个&字符导致的!错误写法:nohup ...

  2. mysql 2

    mysql索引原理 初识索引 为什么要索引?    加速查询   读写比10:1左右 什么是索引?       索引在MySQL中也叫是一种“键”,是存储引擎用于快速找到记录的一种数据结构. 索引是应 ...

  3. 基于jquery、bootstrap的数据验证插件bootstrapValidator使用

    实时验证用户名是否存在,密码不能和用户名相同,两次密码需要相同,提交之后需要验证返回值: <form id="defaultForm" role="form&quo ...

  4. AtCoder Beginner Contest 070 ABCD题

    题目链接:http://abc070.contest.atcoder.jp/assignments A - Palindromic Number Time limit : 2sec / Memory ...

  5. バイナリハックイージー / Unhappy Hacking (ABC Edit) (stack)

    题目链接:http://abc043.contest.atcoder.jp/tasks/abc043_b Time limit : 2sec / Memory limit : 256MB Score ...

  6. JustOj 2009: P1016 (dp)

    题目描述 有一个箱子容量为v(正整数,o≤v≤20000),同时有n个物品(o≤n≤30),每个物品有一个体积  (正整数).要求从  n  个物品中,任取若干个装入箱内,使箱子的剩余空间为最小.  ...

  7. [转载]CSS教程--字体与文本属性

    b>font-family功能:用于改变HTML标志或元素的字体,你可设置一个可用字体清单.浏览器由前向后选用字体.语法:{font-family:字体1,字体2, ... ,字体n} font ...

  8. 【题解】Luogu P5072 [Ynoi2015]盼君勿忘

    众所周知lxl是个毒瘤,Ynoi道道都是神仙题,题面好评 原题传送门 一看这题没有修改操作就知道这是莫队题 我博客里对莫队的简单介绍 既然是莫队,我们就要考虑每多一个数或少一个数对答案的贡献是什么 假 ...

  9. docker 给运行的容器映射本地端口

    1.提交运行中的容器为一个镜像   (这样不会丢失在容器的各种操作) docker commit  tang     tang1 ###  tang(运行容器名称)   tang1(生成镜像名称) 2 ...

  10. 如何使用AsyncTask

    1 如何使用handler,安卓规定只能再UI线程里面刷新UI,但是不能再UI线程里面执行耗时操作.所以我们要把耗时操作放在子线程里,然后把要刷新UI的操作传递到handler里面,然后在由Handl ...