首页 新闻 搜索 专区 学院

ASP.NET程序中的数据缓存怎么会时有时无?

0
悬赏园豆:10 [已关闭问题]

public static void SetCache(string CacheKey, object objObject, DateTime absoluteExpiration,TimeSpan slidingExpiration )
  {
   System.Web.Caching.Cache objCache = HttpRuntime.Cache;
            objCache.Insert(CacheKey, objObject, null, absoluteExpiration, slidingExpiration );

  }

如上面代码所示,网站里我基本上都用这种方法进行缓存,
absoluteExpiration参数一般为DateTime.Now.AddMinutes(15),
slidingExpiration 参数都传入System.Web.Caching.Cache.NoSlidingExpiration,

可奇怪的是,调试时发现,那些缓存项要么都存在,要么都不存在,导致网站运行速度很不稳定.是不是缓存项的大小或个数有限制?还是缓存的命名不能包含特殊字符?

大家有碰到过这种情况吗?该怎么解决?

Ryanism的主页 Ryanism | 初学一级 | 园豆:39
提问于:2009-02-13 17:23
< >
分享
其他回答(4)
0

可以你调度的时候,重新编译后,缓存就丢失了,类似于应用程序重启

canbeing | 园豆:1287 (小虾三级) | 2009-02-13 21:55
0

注意检查是否有网站文件被更新,比如有写文件操作,这时网站会自动被重新编译启动,缓存都会丢失。需要写的文件应该放app_data目录。

Todd Wei | 园豆:170 (初学一级) | 2009-02-13 23:40
0

mark...

Jared.Nie | 园豆:1940 (小虾三级) | 2009-02-14 13:41
0

mark

skyaspnet | 园豆:170 (初学一级) | 2009-02-16 21:39
0

应用程序重启了吧。。或是程序改动重新编译重启

Mervin | 园豆:240 (菜鸟二级) | 2009-02-20 15:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册