OutputCache说明

时间:2022-06-15 05:08:00

当用户访问该页面,整个页面会server存储在内存中,因此,该页面缓存。当用户再次访问该页面,页面不会再次运行数据操作,页面首先检查server中是否存在缓存。假设缓存存在,则直接从缓存中获取页面信息,假设页面不存在。则创建缓存。

页面输出缓存适用于那些数据量较多。而不会进行过多的事件操作的页面,假设一个页面须要运行大量的事件更新,以及数据更新,则并不能使用页面输出缓存。

使用@OutputCatch指令可以声明页面输出缓存,演示样例代码例如以下所看到的。

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

上述代码使用@OutputCatch指令声明了页面缓存。该页面将被缓存120秒。@OutputCatch指令包含10个属性。通过这些属性可以分别为页面的不同情况进行缓存设置,经常使用的属性例如以下所看到的:

q CacheProfile:获取或设置OutputCacheProfile名称。

q Duration:获取或设置缓存项须要保留在缓存中的时间。

q VaryByHeader:获取或设置用于改变缓存项的一组都好分隔的HTTP标头名称。

q Location:获取或设置一个值,该值确定缓存项的位置,包含Any、Clint、Downstream、None、Server和ServerAndClient。

默认值为Any。

q VaryByControl:获取或设置一簇分好分隔的控件标识符,这些标识符包括在当前页或用户控件内,用于改变当前的缓存项。

q NoStore:获取或设置一个值。该值确定是否设置了“Http Cache-Control:no-store”指令。

q VaryByCustom:获取输出缓存用来改变缓存项的自己定义字符串列表。

q Enabled:获取或设置一个值。该值指示是否对当前内容启用了输出缓存。

q VaryByParam:获取查询字符串或窗口POST參数的列表。

通过设置对应的属性。能够为页面设置对应的缓存。当须要为Default.aspx设置缓存项时,能够使用VaryByParam属性进行设置。演示样例代码例如以下所看到的。

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

上述代码使用了Duration属性和VarByParam属性设置了当前页的缓存属性。为一个页面进行总体的缓存设置往往是没有必要的,经常还会造成困扰。比如Default.aspx?id=1和Default.aspx?id=100在缓存时可能呈现的页面是同样的。这往往不是开发者所希望的。通过配置VarByParam属性可以指定缓存參数,演示样例代码例如以下所看到的。

<%@ OutputCache Duration="120" VaryByParam="id" %>

上述代码则通过參数id进行缓存。当id项不同一时候,ASP.NET所进行的页面缓存也不尽同样。这样保证了Default.aspx?id=1和Default.aspx?id=100在缓存时所显示的页面并不一致。

VarByHeader和VarByCustom主要用于依据訪问页面的client对页面的外观或内容进行自己定义。

在ASP.NET中。一个页面可能须要为PC用户和MOBILE用户呈现输出,因此能够通过client的版本号不同来缓存不同的数据,演示样例代码例如以下所看到的。

<%@ OutputCache Duration="120" VaryByParam="none" VaryByCustom="browser" %>

是单独为每个浏览器缓存条目中的代码。

OutputCache说明的更多相关文章

  1. C&num; - 缓存OutputCache(二)缓存详细介绍

    本文是通过网上&个人总结的 1.缓存介绍 缓存是为了提高访问速度,而做的技术. 缓存主要有以下几类:1)客户端缓存Client Caching 2)代理缓存Proxy Caching 3)方向 ...

  2. C&num; - 缓存OutputCache(一)基础配置

    本文是通过网上&个人总结的 1. 介绍 OutputCache输出缓存是复制ASP.NET页面,保存在内存的机制.这种行为有助于提高性能,通过返回的缓存达到网页及时响应的目的,减少客户机器需要 ...

  3. ASP&period;NET 中 OutputCache 指令参数详解

    使用@ OutputCache指令使用@ OutputCache指令,能够实现对页面输出缓存的一般性需要.@ OutputCache指令在ASP.NET页或者页中包含的用户控件的头部声明.这种方式非常 ...

  4. &commat;OutputCache 详解-文章目录

    OutputCache概念学习 OutputCache属性详解(一)一Duration.VaryByParam OutputCache属性详解(二)一 Location OutputCache属性详解 ...

  5. Last-Modified、If-Modified-Since 实现缓存和 OutputCache 的区别

    先梳理三个概念: OutputCache:页面输出缓存,一般 ASP.NET 应用程序会用到. Last-Modified:Http 响应头(Http Reponse Header),由服务器发给客户 ...

  6. OutputCache概念学习

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

  7. OutputCache属性详解(一)一Duration、VaryByParam

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

  8. OutputCache属性详解(二)一 Location

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

  9. OutputCache属性详解(三)— VaryByHeader&comma;VaryByCustom

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

  10. OutputCache属性详解(四)— SqlDependency

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

随机推荐

  1. using的作用

    using (ServiceHost host = new ServiceHost(typeof(OperationService))) 这样写代码有何好处?using的作用范围自动回收垃圾,在这个范 ...

  2. Swfit 字符与字符串

    Swfit 字符与字符串 OC 定义字符 char charValue = 'a'; Swift 定义字符 var charValue:Character = "a" Unicod ...

  3. FZU2165 v11&lpar;带权的重复覆盖&rpar;

    题意:有n个boss,m种武器,每种武器选用的时候需要有一定的花费ci,然后这个武器可以消灭掉其中一些BOSS,问你消灭完所有的BOSS,需要的最少花费是多少. 当时比赛的时候,看到这题以为是什么网络 ...

  4. ArcGIS10的GDB文件解析(初步)

    早就应该写一写关于esri的一些改变 参考http://resources.arcgis.com/zh-cn/help/main/10.1/index.html#//006z000000tr00000 ...

  5. Intel大坑之中的一个:丢失的SSE2 128bit&sol;64bit 位移指令,马航MH370??

    缘由 近期在写一些字符串函数的优化,兴趣使然.但是写的过程中,想要实现 SSE2 128 bit / 64 bit 的按 bit 逻辑位移.遇到了一个大坑,且听我娓娓道来. 我并不想用什么马航370来 ...

  6. Spring通过SchedulerFactoryBean实现调度任务的配置

    http://blog.csdn.net/hu_shengyang/article/details/19815201(里面是配置) 介绍SchedulerFactoryBean http://blog ...

  7. WebAPI接口测试之matthewcv&period;WebApiTestClient

    WebAPI接口测试之matthewcv.WebApiTestClient matthewcv.WebApiTestClient 1.安装matthewcv.WebApiTestClient包 打开v ...

  8. wiki 3143 二叉树的前序、中序及后序遍历

    先序遍历:訪问根.遍历左子树.遍历右子树,简称:DLR. 中序遍历:遍历左子树,訪问根,遍历右子树,简称:LDR. 后序遍历:遍历左子树,遍历右子树.訪问根.简称:LRD. 数组搞的: #pragma ...

  9. linux搭建node环境超详细教程

    linux 环境搭建详细步骤 1.访问官方网址:https://nodejs.org/en/download/ 2.选择和你服务器版本相关的压缩包,复制下载链接 3.服务器登录ssh,(这里我用的服务 ...

  10. 全面解读Java NIO工作原理&lpar;2&rpar;

    全面解读Java NIO工作原理(2) 2011-12-14 10:31 Rollen Holt Rollen Holt的博客 我要评论(0) 字号:T | T JDK 1.4 中引入的新输入输出 ( ...