HttpRequestCachePolicy Class

Defines an application's caching requirements for resources obtained by using HttpWebRequest objects.

System.Object
  System.Net.Cache.RequestCachePolicy
    System.Net.Cache.HttpRequestCachePolicy

Namespace:  System.Net.Cache
Assembly:  System (in System.dll)

public class HttpRequestCachePolicy : RequestCachePolicy

The HttpRequestCachePolicy type exposes the following members.

  NameDescription
Public methodHttpRequestCachePolicy()Initializes a new instance of the HttpRequestCachePolicy class.
Public methodHttpRequestCachePolicy(DateTime)Initializes a new instance of the HttpRequestCachePolicy class using the specified cache synchronization date.
Public methodHttpRequestCachePolicy(HttpRequestCacheLevel)Initializes a new instance of the HttpRequestCachePolicy class using the specified cache policy.
Public methodHttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan)Initializes a new instance of the HttpRequestCachePolicy class using the specified age control and time values.
Public methodHttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan)Initializes a new instance of the HttpRequestCachePolicy class using the specified maximum age, age control value, and time value.
Public methodHttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan, DateTime)Initializes a new instance of the HttpRequestCachePolicy class using the specified maximum age, age control value, time value, and cache synchronization date.
Top

  NameDescription
Public propertyCacheSyncDateGets the cache synchronization date for this instance.
Public propertyLevelGets the HttpRequestCacheLevel value that was specified when this instance was created.
Public propertyMaxAgeGets the maximum age permitted for a resource returned from the cache.
Public propertyMaxStaleGets the maximum staleness value that is permitted for a resource returned from the cache.
Public propertyMinFreshGets the minimum freshness that is permitted for a resource returned from the cache.
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string representation of this instance. (Overrides RequestCachePolicy.ToString().)
Top

You can specify a default cache policy for your application by using the DefaultCachePolicy property or the application or machine configuration files. For more information, see <requestCaching> Element (Network Settings).

You can specify the cache policy for an individual request by using the CachePolicy property.

Caching for Web services is not supported.

The following code example creates a default cache policy for the application domain, and overrides it for a request.

// The following method demonstrates overriding the 
// caching policy for a request. 
public static WebResponse GetResponseNoCache(Uri uri)
{
    // Set a default policy level for the "http:" and "https" schemes.
    HttpRequestCachePolicy policy = new HttpRequestCachePolicy(HttpRequestCacheLevel.Default);
    HttpWebRequest.DefaultCachePolicy = policy;
    // Create the request.
    WebRequest request = WebRequest.Create(uri);
    // Define a cache policy for this request only. 
    HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);
    request.CachePolicy = noCachePolicy;
    WebResponse response = request.GetResponse();
    Console.WriteLine("IsFromCache? {0}", response.IsFromCache);            
    return response;
}

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft