当前位置: 代码迷 >> ASP.NET >> 缓存的老有关问题 相信很多人都期待答案
  详细解决方案

缓存的老有关问题 相信很多人都期待答案

热度:6276   发布时间:2013-02-25 00:00:00.0
缓存的老问题 相信很多人都期待答案
在页面上加了页面缓存   <%@   OutputCache   Duration= "3600 "   VaryByParam= "* "   %>
当数据库数据有更新时如何及时的刷新缓存?
希望能给出完整的解决方案或代码

------解决方案--------------------------------------------------------
HttpResponse.RemoveOutputCacheItem( "/testfolder/test.aspx ");

------解决方案--------------------------------------------------------
既然已经用了缓存 就表示 在一段时间内 数据信息的更新可以不理会。

如果你真的要打到这个功能就要使用 数据库的缓存依靠 SqlDependency
------解决方案--------------------------------------------------------
你可以google很多答案。

你可以根据页面参数、控件是否有提交数据、SQL Server数据表更改、文件是否更改、Cache中的数据项是否更改,以及自己创建的从CacheDependency继承的子类对象以及这些东西的任意复杂组合来控制。

使用缓存服务的关键就是知道如何设置各种依赖规则,如果只会设置Duration,实在是没有学到缓存的知识。努力吧!
------解决方案--------------------------------------------------------
如果是sql2005
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name= "CacheTest " duration= "10 " />
</outputCacheProfiles>
</outputCacheSettings>
<!-- 数据有变化是重新缓存-->
<sqlCacheDependency enabled= "true "> </sqlCacheDependency>
</caching>
------解决方案--------------------------------------------------------
SQL2005最简单,网上有教程,但是如果是SQL2000就麻烦点,要设置触发器,这样还增加系统开销,不划算
  相关解决方案