Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les stratégies de cache basées sur l’emplacement permettent à une application de définir explicitement le comportement de mise en cache en fonction de l’emplacement de la ressource demandée. Cette rubrique montre comment définir la stratégie de cache par programmation. Pour plus d’informations sur la définition de la stratégie d’une application à l’aide des fichiers de configuration, consultez <requestCaching> l’élément (Paramètres réseau).
Pour définir une stratégie de cache basée sur l’emplacement pour une application
Créez un objet RequestCachePolicy ou HttpRequestCachePolicy.
Définissez l’objet de stratégie comme valeur par défaut pour le domaine d’application.
Pour définir une stratégie qui accepte les ressources demandées à partir d’un cache
Créez une stratégie qui accepte les ressources demandées à partir d’un cache si disponible et, sinon, envoie des requêtes au serveur, en définissant le niveau CacheIfAvailablede cache sur . Une demande peut être remplie par n’importe quel cache entre le client et le serveur, y compris les caches distants.
public static void UseCacheIfAvailable() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.CacheIfAvailable); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub UseCacheIfAvailable() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.CacheIfAvailable) HttpWebRequest.DefaultCachePolicy = policy End Sub
Pour définir une stratégie qui empêche tout cache de fournir des ressources
Créez une stratégie qui empêche tout cache de fournir des ressources demandées en définissant le niveau NoCacheNoStorede cache sur . Ce niveau de stratégie supprime la ressource du cache local s’il est présent et indique aux caches distants qu’ils doivent également supprimer la ressource.
public static void DoNotUseCache() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.NoCacheNoStore); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub DoNotUseCache() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.NoCacheNoStore) HttpWebRequest.DefaultCachePolicy = policy End Sub
Pour définir une stratégie qui retourne des ressources demandées uniquement si elles se trouvent dans le cache local
Créez une stratégie qui retourne les ressources demandées uniquement si elles se trouvent dans le cache local en définissant le niveau CacheOnlyde cache sur . Si la ressource demandée n’est pas dans le cache, une WebException exception est levée.
public static void OnlyUseCache() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.CacheOnly); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub OnlyUseCache() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.CacheOnly) HttpWebRequest.DefaultCachePolicy = policy End Sub
Pour définir une stratégie qui empêche le cache local de fournir des ressources
Créez une stratégie qui empêche le cache local de fournir des ressources demandées en définissant le niveau Refreshde cache sur . Si la ressource demandée se trouve dans un cache intermédiaire et est correctement revalidée, le cache intermédiaire peut fournir la ressource demandée.
public static void DoNotUseLocalCache() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.Refresh); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub DoNotUseLocalCache() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.Refresh) HttpWebRequest.DefaultCachePolicy = policy End Sub
Pour définir une stratégie qui empêche tout cache de fournir des ressources demandées
Créez une stratégie qui empêche tout cache de fournir des ressources demandées en définissant le niveau Reloadde cache sur . La ressource retournée par le serveur peut être stockée dans le cache.
public static void SendToServer() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.Reload); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub SendToServer() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.Reload) HttpWebRequest.DefaultCachePolicy = policy End Sub
Pour définir une stratégie qui permet à n’importe quel cache de fournir des ressources demandées si la ressource sur le serveur n’est pas plus récente que la copie mise en cache
Créez une stratégie qui permet à tout cache de fournir des ressources demandées si la ressource sur le serveur n’est pas plus récente que la copie mise en cache en définissant le niveau Revalidatede cache sur .
public static void CheckServer() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.Revalidate); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub CheckServer() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.Revalidate) HttpWebRequest.DefaultCachePolicy = policy End Sub