Click to Rate and Give Feedback
MSDN
MSDN Library
Visual Studio 2005
Visual Studio
Web Pages
Caching
Getting Started
 How to: Set the Cacheability of an ...
This page is specific to
Microsoft Visual Studio 2005/.NET Framework 2.0

Other versions are also available for the following:
ASP.NET 
How to: Set the Cacheability of an ASP.NET Page Declaratively 

The cacheability of a page or user control refers to whether or not a page can be cached on a device during its response life cycle. These devices include the client (browser) making the request, the Web server responding to the request, and any cache-capable devices, such as proxy servers, that are in the request or response stream.

If you know at design time what cacheability setting you need for a page, you can set cacheability declaratively. The page will then use the same cacheability settings for all requests. For more information, see Setting the Cacheability of a Page.

To set a page's cacheability declaratively

  1. Include an @ OutputCache directive in the page and define Duration and VaryByParam attributes.

  2. Include a Location attribute in the @ OutputCache directive and define its value as one of the following values in the OutputCacheLocation enumeration: Any, Client, Downstream, Server, ServerAndClient, or None.

    The following code shows how to set the page's cacheability to 60 seconds:

    <%@ OutputCache Duration="60" VaryByParam="None"%>
    NoteNote

    The default setting is Any. If you do not define a Location attribute, the page output can be cached on all cache-capable network devices that are involved in the response. These include the requesting client, the origin server, and any proxy servers through which the response passes.

To set a page's cacheability declaratively using a cache profile

  1. Define a cache profile in your application's Web.config file and in the profile, include duration and varyByParam settings.

    The following <caching> configuration element defines a cache profile named Cache30Seconds, which will cache the page on the server for 30 seconds.

    <caching>
      <outputCacheSettings>
        <outputCacheProfiles>
          <add name="Cache30Seconds" duration="30" 
            varyByParam="none" />
        </outputCacheProfiles>
      </outputCacheSettings>
    </caching>
  2. Include an @ OutputCachedirective in each ASP.NET page that uses the profile, and set the CacheProfile attribute to the name of the cache profile defined in your Web.config file.

    The following code specifies that the page should use the cache profile named Cache30Seconds:

    <%@ OutputCache CacheProfile="Cache30Seconds" %>

See Also

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2008 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker