asp.net mvc usercontrol缓存

时间:2009-04-02 19:09:49

标签: asp.net asp.net-mvc caching user-controls

使用MVC 1.0

如何缓存页面而不是用户控件。

假设我的母版页上有标签云,标签云是我想要每x分钟刷新一次的用户控件。

我需要做[甜甜圈缓存] [1]吗?

或者它是否已经成为MVC 1.0?

可以在客户端浏览器中完成还是仅在服务器缓存中完成?

[1]:http://haacked.com/archive/2008/11/05/donut-caching-in-asp.net-mvc.aspx/“甜甜圈缓存”

2 个答案:

答案 0 :(得分:0)

你必须在服务器端进行甜甜圈缓存。可以在客户端浏览器上执行此操作,但您必须在事后发出AJAX请求,这不是最佳选择。 StackOverflow实际上将这种形式用于他们自己的标签云。

答案 1 :(得分:0)

是的,你必须使用“post cache substitution”(也称为“donut caching”)。使用“post cache substitution”时,ASP.NET会自动转换仅服务器缓存。还可以考虑使用自定义的HtmlHelper扩展方法而不是UserControl(它更像是ASP.NET MVC)。在ASP.NET MVC上使用“donut caching”有一些限制。也许你应该看看question