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

前端之家收集整理的这篇文章主要介绍了在ASP.NET 2.0中的特定时间清除缓存前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我有一个在午夜运行的进程,它为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以接收其到期时间的通知,并在此时刷新缓存.

猜你在找的asp.Net相关文章