MVC中outputcache页面缓存

1、页面缓存 html

利用页面输出缓存,能够存储呈现的 HTML,以响应相同页的后续请求。 咱们可以使用输出缓存来缓存整个网页或仅缓存ASP.NET 控件的输出。页面缓存可以让 ASP.NET 向客户端发送页响应,而没必要再次通过页处理生命周期。 页输出缓存对于那些不常常更改,但须要大量处理才能建立的页特别有用,能够极大地提升该页的性能。 web

能够分别为每一个页配置页缓存,也能够在 Web.config 文件中建立缓存配置文件,利用缓存配置文件,只定义一次缓存设置就能够在多个页中使用这些设置。浏览器

 


2、OutPutCache经常使用属性介绍缓存

 

一、Duration 服务器

用于设置页面或者用户控件缓存的时间。单位是秒。经过设置该属性,可以为来自对象的HTTP响应创建了一个过时策略,并将自动缓存页或用户控件输出。须要注意的是,Duration属性是必需的,不然将会引发分析器错误。
 性能

二、OutputCacheLocation代理

枚举类型,缓存的位置。当设置成None时,全部缓存将失效,默认为Any。htm

(1)、Any:页面被缓存在浏览器、代理服务器端和web服务器端;对象

(2)、Client:缓存在浏览器;生命周期

(3)、DownStream:页面被缓存在浏览器和任何的代理服务器端;

(4)、Server:页面被缓存在Web服务器端;

(5)、None:页面不缓存;

(6)、ServerAndClient:页面被缓存在浏览器和web服务器端;

 

三、VaryByParam

用于多个输出缓存的字符串列表,并以分号进行分隔。默认时,该字符串与GET方法传递的参数或与POST方法传递的变量相对应。当被设置为多个参数时,输出缓存将会为每一个参数都准备一个与之相对应的文档版本。

可能值包括none,*,以及任何有效的查询串或POST参数名称。

若是您不想要为不一样的已缓存内容指定参数,能够将其设置为none。若是想要指定全部的已缓存内容参数,能够设置为*。

 

四、VaryByCustom

用于自定义输出缓存要求的任意文本。若是赋予该属性值是browser,缓存将随浏览器名称和主要版本信息的不一样而异。若是输入了自定义字符串,则必须在应用程序的Global.asax文件中重写HttpApplication.GetVaryByCustomString方法。

 

五、VaryByHeader

该属性中包含由分号分隔的HTTP标头列表,用于使输出缓存发生变化。当将该属性设为多标头时,对于每一个指定的标头,输出缓存都包含一个请求文档的不一样版本

 

六、NoStore

一个布尔值,用于决定是否阻止敏感信息的二级存储。 将此属性设置为true等效于在请求期间执行代码“Response.Cache.SetNoStore();”。

 

七、CacheProfile

配置文件中设置缓存。 这是可选特性,默认值为空字符串 ('')。

在页中指定此属性时,属性值必须与 outputCacheSettings 节下面的 outputCacheProfiles 元素中的一个可用项的名称匹配。 若是此名称与配置文件项不匹配,将引起异常。

 

参考资料:MVC中outputcache页面缓存   http://www.studyofnet.com/news/1167.html

相关文章
相关标签/搜索