public void OnMoveCacheBack(string key, object value, System.Web.Caching.CacheItemRemovedReason reason)
{
if (Cache[key] != null)
{
Cache.Remove(key);
}
Cache.Add("key", //需要添加到Cache中的键
new { value = "更新值" }, //对应的值
null, //缓存依赖项。
DateTime.Now.AddMinutes(1),//固定缓存时间
System.Web.Caching.Cache.NoSlidingExpiration, //可到延时缓存时间,
System.Web.Caching.CacheItemPriority.NotRemovable, //缓存中的优先级。
new System.Web.Caching.CacheItemRemovedCallback(OnMoveCacheBack));//移除时调用的回调函数
}
参数的具体使用上一定要注意三点,
第一就是缓存的依赖项一定要指定为null。
第二固定到期缓存时间不能和可到延时缓存时间同时指定时间,实现我说的定期更换数据的,当然就要使用固定到期缓存时间了。
第三就是该缓存的优先级了,这个也比较关键,一定要指定为System.Web.Caching.CacheItemPriority.NotRemovable枚举值,这样才不会被自动收回,但是一定要注意该缓存的大小。
您可能感兴趣的文章: