Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Legt den Variablenwert für die Cacherichtlinie fest.
Syntax
virtual HRESULT SetVaryByValue(
PCSTR pszValue
) = 0;
Parameter
pszValue
Ein Zeiger auf eine NULL-endende Zeichenfolge, die den benutzerdefinierten Wert enthält, der angefügt werden soll.
- oder -
NULL.
Rückgabewert
HRESULT. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.
| Wert | BESCHREIBUNG |
|---|---|
| S_OK | Gibt an, dass der Vorgang erfolgreich war. |
| E_INVALIDARG | Gibt an, dass pszValue NULL ist. |
| ERROR_ARITHMETIC_OVERFLOW | Gibt an, dass die Länge von pszValue einen maximalen Grenzwert überschreitet. |
Bemerkungen
Von CHttpModule abgeleitete Klassen, die sich für Anforderungs- oder Antwortereignisse registrieren, erhalten einen IHttpContext-Zeiger als Parameter für die entsprechende virtual Methode. Um den Variablenwert festzulegen, rufen Sie die IHttpContext::GetResponse-Methode , die IHttpResponse::GetCachePolicy-Methode und schließlich die -Methode auf SetVaryByValue .
SetVaryByValue Das Verhalten hängt von der Implementierung ab. Sie sollten die folgenden Informationen als Richtlinie verwenden, aber sie sind möglicherweise nicht in allen Szenarien korrekt:
Der aktuelle Standardimplementierer der IHttpCachePolicy-Schnittstelle deklariert einen
privatePuffer, der Variablendaten enthält. Während der Erstellung eines Implementierers wird dieser Puffer als leer initialisiert.SetVaryByValuegibt E_INVALIDARG sofort zurück, wenn derpszValueParameter NULL ist. Andernfalls wird der interne Puffer bei Bedarf erweitert, um den Inhalt vonpszValueund das NULL-Terminierungszeichen zu enthalten. AnschließendpszValuewird , gefolgt vom NULL-Terminierungszeichen, in diesen Puffer kopiert. Alle Daten im Puffer vor dem Aufruf vonSetVaryByValuewerden ggf. während des AufrufsSetVaryByValuevon überschrieben.
Hinweise für Implementierer
IHttpCachePolicy-Implementierungen sind für das Kopieren des pszValue Parameters in einen Puffer verantwortlich, da die dem pszValue Parameter zugeordneten Daten nach dem Aufruf SetVaryByValuevon nicht garantiert sind.
Hinweise für Aufrufer
IHttpCachePolicy Clients sind dafür verantwortlich, eine NULL-endende Zeichenfolge an die SetVaryByValue -Methode zu übergeben. Clients sind auch für das Löschen von nach dem Aufruf SetVaryByValuevon pszValue verantwortlich, da IHttpCachePolicy Implementierer in einen internen Puffer kopierenpszValue.
Anforderungen
| type | BESCHREIBUNG |
|---|---|
| Client | – IIS 7.0 unter Windows Vista – IIS 7.5 unter Windows 7 – IIS 8.0 unter Windows 8 – IIS 10.0 unter Windows 10 |
| Server | – IIS 7.0 unter Windows Server 2008 – IIS 7.5 unter Windows Server 2008 R2 – IIS 8.0 unter Windows Server 2012 – IIS 8.5 unter Windows Server 2012 R2 – IIS 10.0 unter Windows Server 2016 |
| Produkt | – 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 |
| Header | Httpserv.h |