<requestCaching> 元素(网络设置)
控制网络请求的缓存机制。
configuration
<system.net>
<requestCaching>
语法
<requestCaching
isPrivateCache ="true|false"
disableAllCaching="true|false"
defaultPolicyLevel="BypassCache|Default|CacheOnly|CacheIfAvailable|Revalidate|Reload|NoCacheNoStore|Revalidate"
unspecifiedMaximumAge= "d.hh:mm:ss">
<defaultHttpCachePolicy>...</defaultHttpCachePolicy>
<defaultFtpCachePolicy>...</defaultFtpCachePolicy>
</requestCaching>
特性和元素
下列各节描述了特性、子元素和父元素。
特性
属性 | 说明 |
---|---|
isPrivateCache |
指定缓存是否在不同用户的信息之间提供隔离。 默认值为 true 。 对于中间层应用程序,此值应为 false 。 |
disableAllCaching |
指定已禁用所有 Web 响应的缓存,并且无法以编程方式重写。 |
defaultPolicyLevel |
RequestCacheLevel 枚举中的值之一。 默认值为 BypassCache 。 |
unspecifiedMaximumAge |
指定将内容标记为过期的默认时间。 |
policyLevel 属性
值 | 说明 |
---|---|
Default |
如果资源是全新的、内容长度是准确的,并且存在过期、修改和内容长度属性,则返回缓存的资源。 |
BypassCache |
从服务器返回资源。 |
CacheOnly |
如果内容长度存在且与该项大小匹配,则返回缓存的资源。 |
CacheIfAvailable |
如果提供了内容长度且与该项大小匹配,则返回缓存的资源;否则,从服务器下载资源并返回到调用方。 |
Revalidate |
如果缓存资源的时间戳与服务器上的资源的时间戳相同,则返回缓存的资源;否则将从服务器下载资源,存储在缓存中,然后返回给调用方。 |
Reload |
从服务器下载资源,将资源存储在缓存中,然后返回给调用方。 |
NoCacheNoStore |
如果存在缓存的资源,则将其删除。 从服务器下载资源,并将资源返回给调用方。 |
Revalidate |
如果时间戳与服务器上的资源的时间戳相同,则使用资源的缓存副本满足请求;否则从服务器下载资源,将资源展示给调用方,然后再存储在缓存中。 |
子元素
元素 | 说明 |
---|---|
defaultHttpCachePolicy | 可选元素。 描述 HTTP 缓存是否处于活动状态,并描述默认缓存策略。 |
<defaultFtpCachePolicy> 元素(网络设置) | 可选元素。 描述 FTP 缓存是否处于活动状态,并描述默认缓存策略。 |
父元素
元素 | 说明 |
---|---|
system.net | 包含指定 .NET Framework 如何连接到网络的设置。 |
示例
以下示例演示如何禁用所有缓存。
<configuration>
<system.net>
<requestCaching
disableAllCaching="true"
/>
</system.net>
</configuration>