<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>  

请参阅