获取HttpContext.Current.Cache的AbsoluteExpiration

时间:2015-01-05 05:46:35

标签: asp.net caching

在我的asp.net应用程序中,我正在设置这样的缓存;

 const string key = "MyTestKey";
 object value = true;
 DateTime absoluteExpiration = DateTime.Now.AddMinutes(10);
 TimeSpan slidingExpiration = Cache.NoSlidingExpiration;
 const CacheItemPriority priority = CacheItemPriority.Default;
 CacheItemRemovedCallback onRemoveCallback = null;
 HttpContext.Current.Cache.Add(key, value, null, absoluteExpiration, slidingExpiration, priority, onRemoveCallback);

如何在下次请求时检索HttpContext.Current.Cache对象的absoluteExpiration?或者我可以获得TimeSpan我设置的缓存剩余时间吗?

1 个答案:

答案 0 :(得分:1)

一旦项目被添加到System.Web.Caching.Cache,您就无法检索项目的过期或其他CacheItem信息,除非删除该项目(通过调用Remove或缓存过期显式)或更新。检索对象的唯一方法只返回对象。

如果你想要更高级的缓存功能,你需要考虑使用像MemoryCache这样的东西。