我想使用 System.Runtime.Caching.MemoryCache 来缓存我的一些对象。我想确保该对象每天刷新一次(绝对过期),但如果它在最后一小时内没有使用,我也想让它过期(滑动过期)。我尝试这样做:
object item = "someitem";
var cache = MemoryCache.Default;
var policy = new CacheItemPolicy();
policy.AbsoluteExpiration = DateTime.Now.AddDays(1);
policy.SlidingExpiration = TimeSpan.FromHours(1);
cache.Add("somekey", item, policy);
但是我得到了一个“ArgumentException”,其中“AbsoluteExpiration 必须是 DateTimeOffset.MaxValue 或 SlidingExpiration 必须是 TimeSpan.Zero”。