Partager via


IHttpCachePolicy::SetVaryByValue, méthode

Définit la valeur de variable pour la stratégie de cache.

Syntaxe

virtual HRESULT SetVaryByValue(  
   PCSTR pszValue  
) = 0;  

Paramètres

pszValue
Pointeur vers une chaîne terminée par un caractère Null qui contient la valeur personnalisée à ajouter.

-ou-

NULL.

Valeur renvoyée

Élément HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Valeur Description
S_OK Indique que l’opération a réussi.
E_INVALIDARG Indique que pszValue a la valeur NULL.
ERROR_ARITHMETIC_OVERFLOW Indique que la longueur de pszValue dépasse une limite maximale.

Remarques

Les classes dérivées CHttpModule qui s’inscrivent aux événements de demande ou de réponse reçoivent un pointeur IHttpContext en tant que paramètre sur la méthode correspondantevirtual. Pour définir la valeur de la variable, appelez la méthode IHttpContext::GetResponse , la méthode IHttpResponse::GetCachePolicy et enfin la SetVaryByValue méthode .

SetVaryByValue le comportement dépend de l’implémentation. Vous devez utiliser les informations suivantes comme recommandations, mais elles peuvent ne pas être correctes dans tous les scénarios :

  • L’implémenteur par défaut actuel de l’interface IHttpCachePolicy déclare une private mémoire tampon qui contient des données variables. Pendant la construction d’un implémenteur, cette mémoire tampon est initialisée pour être vide.

  • SetVaryByValue retourne E_INVALIDARG immédiatement si le paramètre a la pszValue valeur NULL. Sinon, la mémoire tampon interne est développée, si nécessaire, pour contenir le contenu de pszValue et le caractère d’arrêt null. Ensuite pszValue, , suivi du caractère d’arrêt Null, est copié dans cette mémoire tampon. Toutes les données de la mémoire tampon avant l’appel à SetVaryByValue sont remplacées, si nécessaire, pendant l’appel à SetVaryByValue.

Remarques pour les implémenteurs

Les implémenteurs IHttpCachePolicy sont chargés de copier le pszValue paramètre dans une mémoire tampon, car la validité des données associées au pszValue paramètre n’est pas garantie après l’appel à SetVaryByValue.

Remarques pour les appelants

IHttpCachePolicy les clients sont responsables du passage d’une chaîne terminée par un caractère Null à la SetVaryByValue méthode . Les clients sont également responsables de la suppression de pszValue après l’appel à SetVaryByValue, car IHttpCachePolicy les implémenteurs copient pszValue dans une mémoire tampon interne.

Spécifications

Type Description
Client - IIS 7.0 sur Windows Vista
- IIS 7.5 sur Windows 7
- IIS 8.0 sur Windows 8
- IIS 10.0 sur Windows 10
Serveur - IIS 7.0 sur Windows Server 2008
- IIS 7.5 sur Windows Server 2008 R2
- IIS 8.0 sur Windows Server 2012
- IIS 8.5 sur Windows Server 2012 R2
- IIS 10.0 sur Windows Server 2016
Produit - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
- IIS Express 7.5, IIS Express 8.0, IIS Express 10.0
En-tête Httpserv.h

Voir aussi

IHttpCachePolicy, interface