获取 HttpContext.Current.Cache 的 AbsoluteExpiration

Get AbsoluteExpiration of HttpContext.Current.Cache

在我的 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?

一旦将项目添加到 System.Web.Caching.Cache,您将无法检索该项目的过期信息或其他 CacheItem 信息,除非正在删除该项目(明确地通过调用 Remove,或通过缓存过期)或更新。唯一存在的方法检索对象 return 仅对象。

如果您想要更高级的缓存功能,则需要考虑使用 MemoryCache 之类的东西。