【发布时间】:2016-02-15 02:29:19
【问题描述】:
是否可以读取MemoryCache中某项的过期时间?
我正在使用 .NET System.Runtime.Caching.MemoryCache 将我的配置信息存储 30 分钟,然后再从数据库中重新加载它。作为状态页面的一部分,我想显示特定缓存项的使用年限或过期时间。
object config = LoadSomeStuffFromDatabase();
CacheItemPolicy cachePolicy = new CacheItemPolicy() { AbsoluteExpiration = DateTime.Now.AddMinutes(30) };
Cache.Add("MyConfigKey", config, cachePolicy);
// And now I want to do something like this :-)
DateTime dt = Cache.SomeMagicMethod("MyConfigKey");
今天我使用了一个每次重新加载配置时都会更新的变量。但是从缓存本身读取这些信息会更好。
【问题讨论】:
-
另一种方法是将您的插入日期与您的对象一起缓存,这样,当您稍后获取它时,您将知道 何时您确实保存了它,并且您可以计算到期需要多长时间
标签: c# caching memorycache