如何给页面添加【文件修改】和【某时间之后】两个缓存依赖条件?

Triumph 2011-02-17 08:06:05
通过 Response.AddCacheDependency 可以给页面添加依赖项 CacheDependency, 可以监视文件。

我现在的要求是,缓存一个页面,直到 A 文件被修改,或者是时间到了第二天,即过了0点。

页面的 @OutputCache 可以指定一个过期时间,但该时间是一个固定秒数,而缓存的时间到次日0点的秒数是动态值。

按照 MSDN 上的说法,用
Response.Cache.SetExpires(DateTime.Now.Date.AddDays(1))
Response.Cache.SetCacheability(HttpCacheability.Public)
Response.Cache.SetValidUntilExpires(True)
也不行,此方法设置的缓存好像只给客户端用的。
...全文
69 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
huangwenquan123 2011-02-17
  • 打赏
  • 举报
回复
lz这个情况完全适应文件缓存依赖,直到你依赖的文件被修改该缓存被清除,不过如果内存不够会自动释放,可以设置一些优先级,用如梦兄给的方法
wuyq11 2011-02-17
  • 打赏
  • 举报
回复
缓存文件可用
depend = new CacheDependency(Server.MapPath("/"));
Cache.Insert("", x, depnd, DateTime.Now.AddSeconds(5), TimeSpan.Zero, CacheItemPriority.Default, null);

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧