【问题标题】:ASP.NET MVC - caching pages on client sideASP.NET MVC - 在客户端缓存页面
【发布时间】:2013-01-30 16:50:06
【问题描述】:

我有这样缓存的代码:

[OutputCache(Duration="3600", Location=OutputCacheLocation.Client)]

现在,我不完全知道这个输出缓存是如何工作的。它究竟在哪里保存页面的副本? OutputCacheLocation.ClientOutputCacheLocation.Browser有什么区别?

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-3 outputcache


    【解决方案1】:

    它究竟将页面副本保存在哪里?

    缓存的存储位置由OutputCacheAttributeLocation 属性确定。在您的情况下,您设置了Location=OutputCacheLocation.Client,以便将缓存保留在客户端浏览器上。

    OutputCacheLocation.Client 和有什么区别 OutputCacheLocation.Browser?

    OutputCacheLocation.Browser 不存在。这是一个无效的值。 OutputCacheLocation 枚举类型的文档包含可能的值及其用法说明:

    • 任何 - 输出缓存可以位于浏览器客户端(请求的来源)、代理服务器(或任何其他服务器)上 参与请求,或在请求所在的服务器上 处理。此值对应于 HttpCacheability.Public 枚举值。
    • 客户端 - 输出缓存位于请求发起的浏览器客户端上。该值对应于 HttpCacheability.Private 枚举值。
    • 下游 - 输出缓存可以存储在源服务器以外的任何支持 HTTP 1.1 缓存的设备中。这包括 代理服务器和发出请求的客户端。
    • 服务器 - 输出缓存位于处理请求的 Web 服务器上。该值对应于 HttpCacheability.Server 枚举值。
    • - 为请求的页面禁用输出缓存。此值对应于 HttpCacheability.NoCache 枚举值。
    • ServerAndClient - 输出缓存只能存储在源头 服务器或在请求的客户端。不允许代理服务器 缓存响应。该值对应于 HttpCacheability.Private 和 HttpCacheability.Server 枚举 价值观。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-02
      • 2014-12-14
      • 1970-01-01
      • 1970-01-01
      • 2010-12-06
      • 2014-03-07
      相关资源
      最近更新 更多