我正在尝试使用HttpContext.Current.Cache
在页面重定向之间保留对象列表。这就是我所拥有的:
private string CACHE_KEY
{
get
{
return "MyKey";
}
}
protected List<object> SomeValue
{
get
{
if (HttpContext.Current.Cache[CACHE_KEY] == null)
{
HttpContext.Current.Cache.Insert(CACHE_KEY,
new List<object>(),
null,
DateTime.Today.AddMinutes(30),
TimeSpan.Zero);
}
return (List<object>)HttpContext.Current.Cache[CACHE_KEY];
}
set
{
HttpContext.Current.Cache.Insert(CACHE_KEY,
value,
null,
DateTime.Today.AddMinutes(1),
TimeSpan.Zero);
}
}
当我尝试检索SomeValue
时,HttpContext.Current.Cache[CACHE_KEY]
最初为空,假设缓存项目计数为n
。在insert语句之后,缓存项目计数为n + 1
,但是当我检查结果视图时,新添加的项目缺失。此外,HttpContext.Current.Cache[CACHE_KEY]
仍为空。
如果这还不够奇怪,这里有一个曲线球...我在我的网站的另一个页面上执行相同的代码块(有一些细微差别),它运行得很好。谁能告诉我这里发生了什么?
答案 0 :(得分:2)