WebRequest.CachePolicy WebRequest.CachePolicy WebRequest.CachePolicy WebRequest.CachePolicy Property

Définition

Obtient ou définit la stratégie de cache de cette demande.Gets or sets the cache policy for this request.

public:
 virtual property System::Net::Cache::RequestCachePolicy ^ CachePolicy { System::Net::Cache::RequestCachePolicy ^ get(); void set(System::Net::Cache::RequestCachePolicy ^ value); };
public virtual System.Net.Cache.RequestCachePolicy CachePolicy { get; set; }
member this.CachePolicy : System.Net.Cache.RequestCachePolicy with get, set
Public Overridable Property CachePolicy As RequestCachePolicy

Valeur de propriété

Objet RequestCachePolicy qui définit une stratégie de cache.A RequestCachePolicy object that defines a cache policy.

Exemples

L’exemple de code suivant illustre la définition de la stratégie de cache pour une requête Web.The following code example demonstrates setting the cache policy for a Web request.

// The following method demonstrates overriding the
// caching policy for a request.
static WebResponse^ GetResponseNoCache( Uri^ uri )
{
   // Set a default policy level for the "http:" and "https" schemes.
   HttpRequestCachePolicy^ policy = gcnew HttpRequestCachePolicy( HttpRequestCacheLevel::Default );
   HttpWebRequest::DefaultCachePolicy = policy;

   // Create the request.
   WebRequest^ request = WebRequest::Create( uri );

   // Define a cache policy for this request only. 
   HttpRequestCachePolicy^ noCachePolicy = gcnew HttpRequestCachePolicy( HttpRequestCacheLevel::NoCacheNoStore );
   request->CachePolicy = noCachePolicy;
   WebResponse^ response = request->GetResponse();
   Console::WriteLine( L"IsFromCache? {0}", response->IsFromCache );
   
   return response;
}
// 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;
}

Remarques

La stratégie de cache actuelle et la présence de la ressource demandée dans le cache déterminent si une réponse peut être récupérée à partir du cache.The current cache policy and the presence of the requested resource in the cache determine whether a response can be retrieved from the cache. L’utilisation de réponses mises en cache améliore généralement les performances de l’application, mais il existe un risque que la réponse dans le cache ne corresponde pas à la réponse sur le serveur.Using cached responses usually improves application performance, but there is a risk that the response in the cache does not match the response on the server.

La stratégie de cache par défaut peut être spécifiée dans le fichier de configuration machine. config DefaultCachePolicy ou en définissant la propriété pour les demandes qui utilisent le modèle d’URI http (Hypertext Transfer Protocol) ou HTTPS (Secure Hypertext Transfer Protocol).Default cache policy can be specified in the Machine.config configuration file or by setting the DefaultCachePolicy property for requests that use the Hypertext Transfer Protocol (HTTP) or Secure Hypertext Transfer Protocol (HTTPS) URI scheme.

Une copie d’une ressource est uniquement ajoutée au cache si le flux de réponse pour la ressource est récupéré et lu à la fin du flux.A copy of a resource is only added to the cache if the response stream for the resource is retrieved and read to the end of the stream. Par conséquent, une autre demande pour la même ressource peut utiliser une copie mise en cache, en fonction du niveau de stratégie de cache de cette demande.So another request for the same resource could use a cached copy, depending on the cache policy level for this request.

S’applique à

Voir aussi