【发布时间】:2015-09-30 08:04:13
【问题描述】:
我在 aspnet 中实现 MemoryCache 对象时遇到问题。 这是我的代码
ObjectCache cache = MemoryCache.Default;
CacheItemPolicy policy = new CacheItemPolicy();
policy.AbsoluteExpiration = DateTimeOffset.Now.AddSeconds(10.0);
cache.Add("keyName", resultQuery, policy);
对象在缓存中正确插入,但是当我删除并重写它时,视图中的新对象仅在我的会话中可见。
var q = queryObject;
var cacheKey = "keyName";
MemoryCache.Default.Remove(cacheKey);
ObjectCache cache = MemoryCache.Default;
CacheItemPolicy policy = new CacheItemPolicy();
policy.AbsoluteExpiration = DateTimeOffset.Now.AddSeconds(10.0);
cache.Add(cacheKey, q, policy);
这就是简单的 Get 实现。
cache.Get(cacheKey);
我不明白为什么有时可以在不同的浏览器会话中工作,有时却不能工作。 有人可以帮助我吗? 谢谢。
【问题讨论】:
-
什么意思只在我的会话中可见?是什么让你这么认为?
标签: c# asp.net-mvc memorycache