.NET Framework 2.0的HttpCachePolicy类

包含可用于设置特定于缓存的 HTTP 标头以及用于控制 ASP.NET 页输出缓存的方法。

public sealed class HttpCachePolicy

继承Object

注解

有关背景信息的 HTTP 标头和控制缓存,请参阅 RFC 2616:超文本传输协议-HTTP/1.1,可在上找到World Wide Web 联合会 (W3C) 网站。

属性

名称说明
UtcTimestampCreated获取或设置 HttpCachePolicy 的协调世界时 (UTC) 中的时间戳。
VaryByContentEncodings获取用于区分输出缓存的 Content-Encoding 标头列表。
VaryByHeaders获取将用于改变缓存输出的所有 HTTP 标头的列表。
VaryByParams获取由影响缓存的 HTTP GET 或 HTTP POST 接收的参数列表。

方法

名称说明
AddValidationCallback(HttpCacheValidateHandler, Object)注册当前响应的验证回调。
AppendCacheExtension(String)指定将文本追加到 Cache-Control HTTP 标头。
Equals(Object)确定指定的对象是否等于当前对象。
(Inherited from Object)
GetCacheability()获取 Cache-Control 指令。
GetCacheExtensions()获取缓存扩展。
GetETag()获取 ETag。
GetETagFromFileDependencies()获取状态,此状态指示是否已基于处理程序的文件依赖项的时间戳设置了 ETag 标头。
GetExpires()获取到期标头。
GetHashCode()作为默认哈希函数。
(Inherited from Object)
GetIgnoreRangeRequests()获取忽略范围请求的状态。
GetLastModifiedFromFileDependencies()基于处理程序文件依赖项的时间戳,获取 Last-Modified 标头集的状态。
GetMaxAge()获取 Cache-Control 最长时间。
GetNoServerCaching()获取当前响应的服务器缓存状态。
GetNoStore()获取存储的状态。
GetNoTransforms()获取 HTTP No-Transform 指令的状态。
GetOmitVaryStar()获取 vary: 标头的状态。
GetProxyMaxAge()获取 HTTP Cache-Control:代理最长时间。
GetRevalidation()获取 Cache-Control:用于反映 must-revalidate 或 proxy-revalidate 指令的标头。
GetType()获取当前实例的 Type。
(Inherited from Object)
GetUtcLastModified()以协调世界时 (UTC) 获取 Last-Modified HTTP 标头的值。
GetVaryByCustom()获取用于改变 HTTP 缓存的自定义字符串。
HasSlidingExpiration()获取一个值,该值指定缓存是否具有可调过期策略。
IsModified()获取一个值,该值指定 HTTP 缓存是否已被修改。
IsValidUntilExpires()获取一个值,该值指定 ASP.NET 缓存是否应忽略客户端发送的使缓存失效的 HTTP Cache-Control 标头。
MemberwiseClone()创建当前 Object 的浅表副本。
(Inherited from Object)
SetAllowResponseInBrowserHistory(Boolean)当 allow 参数为 true 时,将使响应在客户端浏览器“历史记录”缓存中可用,而不论服务器上所做的 HttpCacheability 设置是什么。
SetCacheability(HttpCacheability)将 Cache-Control 标头设置为 HttpCacheability 值之一。
SetCacheability(HttpCacheability, String)将 Cache-Control 标头设置为 HttpCacheability 值之一,并将扩展追加到指令。
SetETag(String)将 ETag HTTP 标头设置为指定的字符串。
SetETagFromFileDependencies()基于处理程序的文件依赖项的时间戳设置 ETag HTTP 标头。
SetExpires(DateTime)将 Expires HTTP 标头设置为绝对日期和时间。
SetLastModified(DateTime)将 Last-Modified HTTP 标头设置为提供的 DateTime 值。
SetLastModifiedFromFileDependencies()基于处理程序的文件依赖项的时间戳设置 Last-Modified HTTP 标头。
SetMaxAge(TimeSpan)基于指定的时间跨度设置 Cache-Control: max-age HTTP 标头。
SetNoServerCaching()停止当前响应的所有源服务器缓存。
SetNoStore()设置 Cache-Control: no-store HTTP 标头。
SetNoTransforms()设置 Cache-Control: no-transform HTTP 标头。
SetOmitVaryStar(Boolean)指定在按参数进行区分时,响应是否应该包含 vary: 标头。
SetProxyMaxAge(TimeSpan)基于指定的时间跨度设置 Cache-Control: s-maxage HTTP 标头。
SetRevalidation(HttpCacheRevalidation)基于提供的枚举值,将 Cache-Control HTTP 标头设置为 must-revalidate或 proxy-revalidate 指令。
SetSlidingExpiration(Boolean)将缓存过期从绝对时间设置为可调时间。
SetValidUntilExpires(Boolean)指定 ASP.NET 缓存是否应忽略客户端发送的使缓存失效的 HTTP Cache-Control 标头。
SetVaryByCustom(String)指定自定义文本字符串,它用于改变已缓存的输出响应。
ToString()返回表示当前对象的字符串。
(Inherited from Object)

通过以下方式在自定义HTTP处理程序中使用输出缓存:

public void ProcessRequest(HttpContext context)
{
        TimeSpan freshness = new TimeSpan(0, 0, 0, 60);
        context.Response.Cache.SetExpires(DateTime.Now.Add(freshness));
        context.Response.Cache.SetMaxAge(freshness);
        context.Response.Cache.SetCacheability(HttpCacheability.Public);
        context.Response.Cache.SetValidUntilExpires(true);
        ...
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值