asp.net - ASP.NET创建缓存控件

标签 asp.net caching user-controls outputcache

我解决了缓存方面的大多数问题。但是仍然有一件事。我有一个使用输出缓存的UserControl。像这样:

<%@ OutputCache Duration="1200" VaryByParam="none" %> 

但是,如您所见,该控件每12分钟重新创建一次,因为生成控件需要5到10秒。

现在,ASP.NET的默认行为是在用户进入页面时创建控件,并将其保留在缓存中12分钟。然后,再过5分钟后,用户进入页面,则再次创建控件。

有没有一种方法可以强制ASP.NET在12分钟的缓存过期后重新创建控件?下次访问用户时都可以吗?

甚至是一个完美的解决方案:比如说在11分钟50秒后在后台重新创建控件,而不仅仅是在12分钟后用新的控件替换实际的控件?

感谢帮助!

最佳答案

因为ASP.NET仅与触发器一起使用,所以使用Windows计划任务每​​12分钟进入此页面。触发器可以是每12分钟请求其他页面的Ajax,也可以是访问您网页的下一个用户。

关于asp.net - ASP.NET创建缓存控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3184255/

相关文章:

c - Schönauer Triad 基准 - L1D 缓存不可见

scala - Play 框架中 Futures 上的 Cache.getOrElse

Android - 绘图缓存 - 什么时候有用?

c# - 在设计器中显示 UserControl 的公共(public)字段

c# - 如何在asp.net中使用mysql连接远程数据库?

asp.net - 如何使用 vb.net 在文本框中检索当前登录的用户角色名称?

c# - 担心并发问题——我应该一次只允许 1 个用户吗?

asp.net - 从 Microsoft 堆栈转向开源动态网站开发的最佳方法是什么?

c# - 防止 "Edit"用户控件上的 CSS 更改?

linux - 如何添加将更改 Linux 中其余脚本路径的用户输入框