Metodo IHttpCachePolicy::AppendVaryByQueryString
Aggiunge il valore della query ai criteri della cache.
Sintassi
virtual HRESULT AppendVaryByQueryString(
PCSTR pszParam
) = 0;
Parametri
pszParam
Puntatore a una stringa con terminazione null contenente la stringa di query personalizzata da aggiungere.
-oppure-
NULL
Valore restituito
Oggetto HRESULT
. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente.
Valore | Descrizione |
---|---|
S_OK | Indica che pszParam è NULL.-oppure- Indica che pszParam viene aggiunto all'elenco di query. |
ERROR_NOT_ENOUGH_MEMORY | Indica che la memoria heap è esaurita. |
E_FAIL | Indica che l'operazione non è riuscita. |
Commenti
Le classi derivate CHttpModule che registrano gli eventi di richiesta o risposta ricevono un puntatore IHttpContext come parametro nel metodo corrispondentevirtual
. Per aggiungere una query personalizzata, chiamare il metodo IHttpContext::GetResponse, il metodo IHttpResponse::GetCachePolicy e infine il AppendVaryByQueryString
metodo .
AppendVaryByQueryString
il comportamento dipende dall'implementazione. È consigliabile usare le informazioni seguenti come linee guida, ma potrebbe non essere corretta in tutti gli scenari:
L'implementazione predefinita corrente dell'interfaccia IHttpCachePolicy dichiara un private
buffer che contiene dati di intestazione delle variabili. Durante la costruzione di un implementatore, questo buffer viene inizializzato in vuoto. Ogni volta AppendVaryByQueryString
che viene chiamato, AppendVaryByQueryString
restituisce immediatamente S_OK se il pszParam
parametro è NULL. In caso contrario, il buffer viene espanso per contenere una copia di pszParam
, incluso il carattere di terminazione Null, più 1 se il buffer non è attualmente vuoto. Se quindi il buffer non è vuoto, il carattere ',' viene aggiunto al buffer. Infine, il contenuto di pszParam
, incluso il carattere di terminazione Null, viene aggiunto al buffer.
Note per gli implementatori
Gli implementatori IHttpCachePolicy sono responsabili della copia del pszParam
parametro in un buffer, perché i dati associati pszParam
a non sono garantiti essere validi dopo la chiamata a AppendVaryByQueryString
.
Note per i chiamanti
IHttpCachePolicy
i client sono responsabili del passaggio di un parametro NULL o di una stringa con terminazione null pszParam
al AppendVaryByHeader
metodo. I client sono anche responsabili della eliminazione dopo pszParam
la chiamata a AppendVaryByHeader
, perché IHttpCachePolicy
gli implementer copiano pszParam
in un buffer interno.
Il buffer interno usato dall'implementatore predefinito IHttpCachePolicy
è una stringa delimitata da virgole di intestazioni personalizzate. Pertanto, pszParam
non deve includere il carattere ',' .
Requisiti
Tipo | Descrizione |
---|---|
Client | - IIS 7.0 in Windows Vista - IIS 7.5 in Windows 7 - IIS 8.0 in Windows 8 - IIS 10.0 in Windows 10 |
Server | - IIS 7.0 in Windows Server 2008 - IIS 7.5 in Windows Server 2008 R2 - IIS 8.0 in Windows Server 2012 - IIS 8.5 in Windows Server 2012 R2 - IIS 10.0 in Windows Server 2016 |
Prodotto | - 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 |
Intestazione | Httpserv.h |