Gewusst wie: Deklaratives Festlegen der Cachefähigkeit einer ASP.NET-Seite
Aktualisiert: November 2007
Die Cachefähigkeit einer Seite oder eines Benutzersteuerelements gibt an, ob eine Seite während ihres Antwortlebenszyklus auf einem Gerät gespeichert werden kann oder nicht. Zu diesen Geräten gehören der Client (Browser), der die Anforderung absetzt, der Webserver, der auf die Anforderung reagiert, sowie alle cachefähigen Geräte, z. B. Proxyserver, die sich innerhalb des Anforderungs- oder Antwortstreams befinden.
Wenn Sie bereits zur Entwurfszeit wissen, welche Einstellungen Sie für die Cachefähigkeit benötigen, können Sie die Cachefähigkeit deklarativ festlegen. Die Seite verwendet dann für alle Anforderungen die gleichen Cachefähigkeitseinstellungen. Weitere Informationen finden Sie unter Festlegen der Cachefähigkeit einer Seite.
So legen Sie die Cachefähigkeit einer Seite deklarativ fest
Fügen Sie eine @ OutputCache-Direktive in die Seite ein, und definieren Sie das Duration-Attribut und das VaryByParam-Attribut.
Fügen Sie ein Location-Attribut in die @ OutputCache-Direktive ein, und definieren Sie dessen Wert als einen der folgenden Werte in der OutputCacheLocation-Enumeration: Any, Client, Downstream, Server, ServerAndClient oder None.
Der folgende Code zeigt, wie die Cachefähigkeit der Seite auf 60 Sekunden festgelegt wird:
<%@ OutputCache Duration="60" VaryByParam="None"%>
Hinweis: Die Standardeinstellung ist Any. Falls Sie kein Location-Attribut definieren, kann die Seitenausgabe von allen cachefähigen Netzwerkgeräten zwischengespeichert werden, die an der Antwort beteiligt sind. Dazu gehören der anfordernde Client, der ursprüngliche Server sowie alle Proxyserver, die die Antwort durchläuft.
So legen Sie mit einem Cacheprofil die Cachefähigkeit einer Seite deklarativ fest
Definieren Sie in der Datei Web.config der Anwendung ein Cacheprofil, und fügen Sie im Profil die duration-Einstellung und die varyByParam-Einstellung ein.
Das folgende <caching>-Konfigurationselement definiert ein Cacheprofil mit dem Namen Cache30Seconds, durch das die Seite für 30 Sekunden auf dem Server zwischengespeichert wird.
<caching> <outputCacheSettings> <outputCacheProfiles> <add name="Cache30Seconds" duration="30" varyByParam="none" /> </outputCacheProfiles> </outputCacheSettings> </caching>
Fügen Sie in jeder ASP.NET-Seite, die das Profil verwendet, eine @ OutputCache-Direktive ein, und legen Sie das CacheProfile-Attribut auf den Namen des in der Datei Web.config definierten Cacheprofils fest.
Der folgende Code gibt an, dass die Seite das Cacheprofil mit dem Namen Cache30Seconds verwenden soll:
<%@ OutputCache CacheProfile="Cache30Seconds" %>
Siehe auch
Aufgaben
Gewusst wie: Programmgesteuertes Festlegen der Cachefähigkeit einer Seite
Konzepte
Zwischenspeichern von ASP.NET-Seiten