在MVC 3中输出缓存_ViewStart.cshtml和_Layout.cshtml

时间:2011-09-22 18:24:30

标签: asp.net-mvc asp.net-mvc-3 caching master-pages outputcache

我正在尝试缓存MVC 3 _ViewStart和_Layout页面,我认为这些默认情况下不会缓存吗?问题是Web服务器或IIS中的VS bult应该在这些站点母版页中缓存我的图像,但它似乎每次都加载它们。

我可以将OutputCache属性放在控制器上但我不能在上面的这些页面上,因为它们没有控制器。有可能吗?

1 个答案:

答案 0 :(得分:2)

_ViewStart_Layout仅构成最终标记的元素。因此,通过在某些控制器操作上使用[OutputCache]属性,您可以从此操作(包括视图)缓存整个生成的HTML,并且您实际上也在缓存这些元素。

不幸的是,ASP.NET MVC 3不支持Donut Caching。它仅支持Donut Hole Caching。我想这会有所改进,并在未来的版本中增加了支持。