public string PutPhotoIdIntoCache(string key, string photoid)
{
object val = HttpContext.Current.Cache.Get(key);
string newval = val == null ? photoid : val + "," + photoid;
HttpContext.Current.Cache.Insert(key, newval, null, System.DateTime.Now.AddHours(2), System.Web.Caching.Cache.NoSlidingExpiration);
return HttpContext.Current.Cache.Get(key).ToString();
}
想设置成过期时间2小时,但是不到1分钟就清空了
HttpContext.Current.Cache.Insert(key, newval);
设置成不过期,还是一会儿就过期清空了
重启当然会丢失. 除非存到redis里,要么就是服务器一直运行
重启丢失数据也没关系
我希望在不重启服务器的情况下,2个小时内缓存不过期
不借助redis或者memcached等分布式缓存工具,用ASP.NET自带的缓存
你这个缓存是在内存里的吧?
嗯,重启服务器肯定丢失
@寻找薛定谔的猫: 重启当然会丢失. 除非存到redis里,要么就是服务器一直运行
@寻找薛定谔的猫: 想要不丢失就用第三方memecache,redis等等。。。
@顾晓北:
重启丢失数据也没关系
我希望在不重启服务器的情况下,2个小时内缓存不过期
不借助redis或者memcached等分布式缓存工具,用ASP.NET自带的缓存
全局缓存时长设置过没有
请问在哪里设置?
web.config?
IIS?