加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

在ASP.NET 2.0中的特定时间清除缓存

发布时间:2020-12-15 21:07:43 所属栏目:asp.Net 来源:网络整理
导读:所以我有一个在午夜运行的进程,它为flash对象设置一个起点和终点.这只需要每天运行一次,所以我显然是在缓存结果集. 但是,我遇到的问题是,如果数据仍然在midnite之后缓存,则它不会提取最正确的数据,直到缓存过期. 我基本上需要缓存在晚上11:59:59到期,以便在
所以我有一个在午夜运行的进程,它为flash对象设置一个起点和终点.这只需要每天运行一次,所以我显然是在缓存结果集.

但是,我遇到的问题是,如果数据仍然在midnite之后缓存,则它不会提取最正确的数据,直到缓存过期.

我基本上需要缓存在晚上11:59:59到期,以便在凌晨12:00获得正确的数据.

我猜测桌面上的SQL缓存依赖性我将从中提取数据是理想的,但我以前从未设置过.

有没有办法告诉缓存在正确的midnite删除特定的项目?

多谢你们!

– 绝对期满—

我想我明白了:

DateTime expireWeights = new DateTime(DateTime.Now.Year,DateTime.Now.Month,DateTime.Now.Day,23,59,999);
Cache.Insert("CacheItemName",itemToCache,null,expireWeights,System.Web.Caching.Cache.NoSlidingExpiration);

解决方法

您可以在Cache对象上设置absoluteExpiration时间,该时间是DateTime.

您还可以将absoluteExpiration与SqlCacheDependency结合使用.

关于缓存过期时不提取新数据的问题:您可以连接CacheItemRemovedCallback以接收其到期时间的通知,并在此时刷新缓存.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读