System.Web.Caching
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的更多相关文章
- System.Web.Caching.Cache类 缓存
1.文件缓存依赖 public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender ...
- System.Web.Caching.Cache类 缓存 各种缓存依赖
原文:System.Web.Caching.Cache类 缓存 各种缓存依赖 Cache类,是一个用于缓存常用信息的类.HttpRuntime.Cache以及HttpContext.Current.C ...
- System.Web.Caching.Cache 方法汇总
在做后台的时候,想着把所有栏目放到缓存里,就这里了一个类.必然是有缺陷,暂时没有实现滑动缓存 using System; using System.Collections; using System. ...
- 清除 System.Web.Caching.Cache 以"xxx"开头的缓存
public static void ClearStartCache(string keyStart) { List<string> cacheKeys = new List<str ...
- 第一节:从程序集的角度分析System.Web.Caching.Cache ,并完成基本封装。
一. 揭开迷雾 1. 程序集准备 a. 需要给项目添加 System.Web 程序集. b. 需要给使用的地方添加两个引用. 2. 程序集探究 在对应的类中输入关键字 Cache,选中点 ...
- 深入System.Web.Caching命名空间 教你Hold住缓存管理
一,System .Web.Caching与缓存工作机制简介 System.Web.Caching是用来管理缓存的命名空间,其父级空间是System.Web,由此可见,缓存通常用于Web网站的开发,包 ...
- System.Web.Caching.Cache类 缓存 各种缓存依赖(转)
转自:http://www.cnblogs.com/kissdodog/archive/2013/05/07/3064895.html Cache类,是一个用于缓存常用信息的类.HttpRuntime ...
- System.Web.Caching.Cache类 Asp.Net缓存 各种缓存依赖
Cache类,是一个用于缓存常用信息的类.HttpRuntime.Cache以及HttpContext.Current.Cache都是该类的实例. 一.属性 属性 说明 Count 获取存储在缓存中的 ...
- Cache管理机制(System.Web.Caching)
一,System .Web.Caching与缓存工作机制简介 System.Web.Caching是用来管理缓存的命名空间,其父级空间是System.Web,由此可见,缓存通常用于Web网站的开发,包 ...
随机推荐
- C#中的基本类型理解
1.C#把所有基本类型都封装成自己的类型了,如下图,int被封装成了一个struct结构体.如果定义一个int对象,是可以调用int结构体里的函数的 2.和C\C++不同,C#的char就是单纯的代表 ...
- xshell的Solarized Dark配色方案
之前在ubuntu, kali, mint, air下都使用这一款配色方案,后来在网上看到有人在xshell中使用,配色方案有分享,就是一起无法导入 原来这个东西在你现有的连接无法直接导入,需要重新打 ...
- Eclipse中离线安装ADT插件详细教程
在搭建Android开发环境的时候,我们需要为Eclipse安装ADT(Android Development Tools)插件,这个插件可以为用户提供一个强大的Android集成开发环境.通过给Ec ...
- Spyder clear variable explorer from memory
https://stackoverflow.com/questions/45853595/spyder-clear-variable-explorer-along-with-variables-fro ...
- HDU 1358 Period(KMP+最小循环节)题解
思路: 这里只要注意一点,就是失配值和前后缀匹配值的区别,不懂的可以看看这里,这题因为对子串也要判定,所以用前后缀匹配值,其他的按照最小循环节做 代码: #include<iostream> ...
- JVM堆内存调优
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存限制.32位系统下,一般限制在1.5G~2G:64为操作 ...
- Sql 最简单的Sqlserver连接
string name = txtUserName.Text.Trim();//移除用户名前部和后部的空格 string pwd = txtUserPwd.Text.Trim();//移除密码前部和后 ...
- BZOJ 1005: [HNOI2008]明明的烦恼(prufer数列)
http://www.lydsy.com/JudgeOnline/problem.php?id=1005 题意: Description 自从明明学了树的结构,就对奇怪的树产生了兴趣......给出标 ...
- HDU 2460 Network(桥+LCA)
http://acm.hdu.edu.cn/showproblem.php?pid=2460 题意:给出图,求每次增加一条边后图中桥的数量. 思路: 先用tarjan算法找出图中所有的桥,如果lowv ...
- ros python 重置位置
#!/usr/bin/env python import rospy import math import sys import commands import yaml from tf import ...