ASP.NET Syntax ASP.NET Configuration Sections
Configures the cache settings for a Web application.
<caching>
<cache>...</cache>
<outputCache>...</outputCache>
<outputCacheSettings>...</outputCacheSettings>
<sqlCacheDependency>...</sqlCacheDependency>
</caching>
The following sections describe attributes, child elements, and parent elements.
None.
Element |
Description |
cache |
Optional element.
Defines global application cache settings. |
outputCache |
Optional element.
Specifies application-wide output-cache settings. |
outputCacheSettings |
Optional element.
Specifies output-cache settings that can be applied to pages in the application. |
sqlCacheDependency |
Optional element.
Configures the SQL cache dependencies for an ASP.NET application. |
Element |
Description |
configuration |
The required root element in every configuration file used by the common language runtime and .NET Framework applications. |
system.web |
Specifies the root element for the ASP.NET configuration settings in a configuration file. Contains configuration elements that configure ASP.NET Web applications and control how the applications behave. |
The following default caching element is not explicitly configured in the Machine.config file or in the root Web.config file, but is the default configuration returned by application in the .NET Framework version 2.0.
<caching>
<cache disableMemoryCollection = "false"
disableExpiration = "false"
privateBytesLimit = "0"
percentagePhysicalMemoryUsedLimit = "90"
privateBytesPollTime = "00:02:00" />
<cache disableMemoryCollection = "false"
disableExpiration = "false"
privateBytesLimit = "0"
percentagePhysicalMemoryUsedLimit = "90"
privateBytesPollTime = "00:02:00" />
<outputCache enableOutputCache = "true"
enableFragmentCache = "true"
sendCacheControlHeader = "true"
omitVaryStar = "false">
</outputCache>
<outputCache enableOutputCache = "true"
enableFragmentCache = "true"
sendCacheControlHeader = "true"
omitVaryStar = "false">
</outputCache>
<outputCacheSettings>
<outputCacheProfiles>
<add name = ""
enabled = "true"
duration = "-1"
location = ""
sqlDependency = ""
varyByCustom = ""
varyByControl = ""
varyByHeader = ""
varyByParam = ""
noStore = "false" />
</outputCacheProfiles>
</outputCacheSettings>
<outputCacheSettings>
<outputCacheProfiles>
<clear />
</outputCacheProfiles>
</outputCacheSettings>
<sqlCacheDependency enabled = "true"
pollTime = "60000">
<databases>
<add name = ""
connectionStringName = ""
pollTime = "60000" />
</databases>
</sqlCacheDependency>
<sqlCacheDependency enabled = "true"
pollTime = "60000">
<databases>
<clear />
</databases>
</sqlCacheDependency>
</caching>
The following example caches a page on the server only for one minute and stores different versions of the page based on browser type and major version.
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name = "ServerOnly"
duration = "60"
varyByCustom = "browser"
location = "Server" />
</outputCacheProfiles>
</outputCacheSettings>
</caching>
When designing a page that needs to be cached in this way, you will need to add the following directive to the page:
<%@ OutputCache CacheProfile = "ServerOnly" %>
For more information see @ OutputCache.
ASP.NET Configuration SystemWebCachingSectionGroup Class ASP.NET Caching Features