Duration
指定页面或控件被缓存的时间 (以秒为单位). 设置页面或用户控件的缓存时间属性会为其建立相应的HTTP响应过期策略并且自动缓存输出结果。 !该属性是必须的,如果没有指定将会引发解析器错误。
Location
OutputCacheLocation枚举量
Any|Client|Downstream|None|Server|ServerAndClient
的取值。默认为
Any
。 !该属性不支持用户控件(.ascx文件)中的
@OutputCache
指令。
Shared
用来控制用户控件输出内容是否能够被多个页面共享。默认值为
false
。 !该属性不支持ASP.NET页面(.aspx文件)中的
@OutputCache
指令。
VaryByCustom
任何自定义输出缓存的文字。如果将该属性设置为
browser
,将会缓存多种的浏览器名称与版本信息。当使用了自定义字符串之后,就必须在应用程序的Global.asax文件中对
HttpApplication.GetVaryByCustomString
成员进行重载。
VaryByHeader
多个不同输出缓存所使用的HTTP响应头信息,并且通过分号进行分隔。当设置为多个响应头信息时,输出缓存将会为每个已指定的头信息缓存多个不同版本的响应文档。 !设置
VaryByHeader属性后将会启用所有HTTP 1.1缓存项,而不单单仅限于ASP.NET缓存项。用户控件中的
@OutputCache
指令不支持该属性。
VaryByParam
用于多个输出缓存的字符串列表,并以分号进行分隔。默认时,该字符串与GET方法传递的参数或与POST方法传递的变量相对应。当被设置为多个参数时,输出缓存将会为每个参数都准备一个与之相对应的文档版本。可能值包括
none
,
*
,以及任何有效的查询串或POST参数名称。 !该属性在需要进行缓存输出的ASP.NET页面中是必不可少的。而且在已指定了
VaryByControl
参数的
@OutputCache
控件指令的情况下也如此。如果对其进行错误的包含将会引发解析器错误。如果您不想要为不同的已缓存内容指定参数,可以将其设置为
none
。如果想要指定所有的已缓存内容参数,可以设置为
*
。
VaryByControl
指定用户控件的输出缓存列表,并以分号作为分隔。字符串由被定义在用户控件中的ASP.NET服务器端控件的
ID
属性组成。 !该参数在已指定了
VaryByParam
参数的
@OutputCache
指令的用户控件中是必需的。但不被已指定
@OutputCache
指令的ASP.NET页面所支持。