HttpCacheVaryByContentEncodings HttpCacheVaryByContentEncodings HttpCacheVaryByContentEncodings HttpCacheVaryByContentEncodings Class

Definition

Bietet eine typsichere Methode, um die VaryByContentEncodings-Eigenschaft der HttpCachePolicy-Klasse festzulegen.Provides a type-safe way to set the VaryByContentEncodings property of the HttpCachePolicy class.

public ref class HttpCacheVaryByContentEncodings sealed
public sealed class HttpCacheVaryByContentEncodings
type HttpCacheVaryByContentEncodings = class
Public NotInheritable Class HttpCacheVaryByContentEncodings
Vererbung
HttpCacheVaryByContentEncodingsHttpCacheVaryByContentEncodingsHttpCacheVaryByContentEncodingsHttpCacheVaryByContentEncodings

Beispiele

Im folgenden Beispiel wird gezeigt, wie eine dynamisch komprimierte Antwort aktiviert wird, die über den Ausgabe Cache bereitgestellt werden kann.The following example shows how to enable a dynamically compressed response that can be served from the output cache. Die zulässige Codierung ist "gzip" und wird mithilfe des VaryByContentEncodings -Attributs der-Direktive festgelegt.The encoding that is acceptable is "gzip" and is set by using the VaryByContentEncodings attribute of the directive. Wenn für den Webserver, der die Seite hostet, keine dynamische Komprimierung aktiviert ist, verfügt der Ausgabe Cache nicht über eine zwischengespeicherte Antwort für die angegebene Inhalts Codierung.If the Web server that hosts the page does not have dynamic compression enabled, the output cache will not have a cached response for the specified content encoding.

<%@ Page Language="C#" %>
<%@ OutputCache VaryByParam="none" Duration="10" VaryByContentEncodings="gzip" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Varying Output Cache By Content Encoding</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <%= DateTime.Now.ToString() %>
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ OutputCache VaryByParam="none" Duration="10" VaryByContentEncodings="gzip" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Varying Output Cache By Content Encoding</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <%= DateTime.Now.ToString() %>
    </div>
    </form>
</body>
</html>

Hinweise

Die VaryByContentEncodings -Eigenschaft wird verwendet, um anzugeben, ob dynamisch komprimierte Antworten zwischengespeichert werden.The VaryByContentEncodings property is used to specify whether dynamically compressed responses are cached. Das Zwischenspeichern dynamisch komprimierter Antworten bedeutet, dass die Komprimierungs Kosten nur einmal, während der ersten Anforderung für die Ressource (oder nach einem Neustart der Anwendung) und beim Ablaufen des Cache Elements anfallen.Caching dynamically compressed responses means that the cost of compression is incurred only one time, during the first request for the resource (or after an application restart) and when the cache item expires.

Die VaryByContentEncodings -Eigenschaft HttpCachePolicy der-Klasse gibt an, welche Anforderungs Header Parameter von ASP.NET verwendet werden, um eine Variation der Antwort eindeutig zu identifizieren, wenn mehrere zwischengespeicherte Antworten für eine Ressource vorhanden sind.The VaryByContentEncodings property of the HttpCachePolicy class identifies which request header parameters ASP.NET uses to uniquely identify a variation of the response if there are multiple cached responses for a resource. Dies ist nützlich, wenn eine Antwort von einer Reihe von Client Eingaben abhängig ist, wie z. b. Headern, Parametern oder Inhalts Codierungen.This is useful when a response depends on a set of client inputs, such as headers, parameters, or content encodings.

Die HttpCacheVaryByContentEncodings -Klasse steht nicht direkt im Zusammenhang mit HTTP-Cache-Control-Headern.The HttpCacheVaryByContentEncodings class is not directly related to HTTP cache-control headers. Dadurch wird jedoch sichergestellt, dass eine Antwort an einen Client oder einen Proxy von der angegebenen Inhalts Codierung abweicht.However, it helps make sure that a response to a client or a proxy varies by the specified content encoding. Wenn der Cache so festgelegt wird, dass er von der Inhalts Codierung variiert, Accept-Encoding kann ASP.net die Antwort durch den Header variieren.Setting the cache to vary by content encoding enables ASP.NET to vary the response by the Accept-Encoding header. Wenn eine Anforderung verarbeitet wird, wird Accept-Encoding der Header geprüft, und die erste akzeptable Codierung wird identifiziert und verwendet, um eine der folgenden Aktionen auszuführen:When a request is processed, the Accept-Encoding header is checked and the first acceptable encoding is identified and used to take one of the following actions:

  • Wenn eine übereinstimmende Codierung auch in der VaryByContentEncodings Liste gefunden wird und eine zwischengespeicherte Antwort vorhanden ist, wird die zwischengespeicherte Antwort gesendet.If a matching encoding is also found in the VaryByContentEncodings list and a cached response exists, the cached response is sent.

  • Wenn eine übereinstimmende Codierung auch in der VaryByContentEncodings Liste gefunden wird, aber keine zwischengespeicherte Antwort vorhanden ist, wird eine Antwort generiert und in den Cache eingefügt.If a matching encoding is also found in the VaryByContentEncodings list but a cached response does not exist, a response is generated and inserted into the cache.

  • Wenn keine übereinstimmende Codierung in der VaryByContentEncodings Liste gefunden wird, wird der Cache nach einer nicht codierten Antwort durchsucht, die auch als Identitäts Antwort bezeichnet wird.If a matching encoding is not found in the VaryByContentEncodings list, the cache is searched for a non-encoded response, also referred to as the identity response. Wenn die Identitäts Antwort gefunden wird, wird Sie gesendet.If the identity response is found, it is sent. Andernfalls wird eine neue nicht codierte Antwort generiert und im Cache gespeichert.Otherwise a new non-encoded response is generated and stored in the cache.

Weitere Informationen VaryByContentEncodings zur-Eigenschaft finden Sie unter RFC 2616: Hypertext Transfer Protocol--HTTP/1.1, verfügbar auf der World Wide Web Consortium-Website (W3C).For more information about the VaryByContentEncodings property, see RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1, available on the World Wide Web Consortium (W3C) Web site. Ausführliche Informationen finden Sie im Abschnitt 14, "Header Feld Definitionen".See section 14, "Header Field Definitions", for complete details.

Sie können die VaryByContentEncodings -Eigenschaft festlegen, indem Sie die-Direktive verwenden oder dem-Element in der Datei "Web. config" ein Profil hinzufügen.You can set the VaryByContentEncodings property by using the directive or by adding a profile to the element in the Web.config file.

Konstruktoren

HttpCacheVaryByContentEncodings() HttpCacheVaryByContentEncodings() HttpCacheVaryByContentEncodings() HttpCacheVaryByContentEncodings()

Initialisiert eine neue Instanz der HttpCacheVaryByContentEncodings-Klasse.Initializes a new instance of the HttpCacheVaryByContentEncodings class.

Eigenschaften

Item[String] Item[String] Item[String] Item[String]

Ruft einen Wert ab, der angibt, ob der Cache je nach der angegebenen Inhaltscodierung geändert wird, oder legt diesen fest.Gets or sets a value that indicates whether the cache varies according to the specified content encoding.

Methoden

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetContentEncodings() GetContentEncodings() GetContentEncodings() GetContentEncodings()

Ruft ein Array von Werten ab, die die Inhaltscodierungen angeben, die zum Variieren des Cache verwendet werden sollen.Gets an array of values which specify the content encodings to be used for varying the cache.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
SetContentEncodings(String[]) SetContentEncodings(String[]) SetContentEncodings(String[]) SetContentEncodings(String[])

Legt ein Array von Werten fest, die die Inhaltscodierungen angeben, die zum Variieren des Cache verwendet werden sollen.Sets an array of values which specify the content encodings to be used for varying the cache.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Gilt für:

Siehe auch