O'Reilly logo

Programming ASP.NET 3.5, 4th Edition by Jesse Liberty, Dan Hurwitz, Dan Maharry

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Data Caching

Data caching is (surprise!) the caching of data from a data source. As long as the cache is not expired, a request for data will be fulfilled from the cache rather than the original data source. If the cache is expired for whatever reason, fresh data will be obtained by the data source and the cache will be refreshed. The cache can expire for many reasons, as you will see. These can include timeouts, changed data, or changes to other objects.

There are two kinds of data caching; both are very useful:

  • DataSourceControl caching

  • SQL cache dependency

DataSourceControl Caching

As we showed in Chapters Chapter 7 through Chapter 10, DataSource controls represent data in a data source, such as a database or an XML file. Of those that derive from the abstract DataSourceControl class (see Figure 7-1 in Chapter 7), the ObjectDataSource, the SqlDataSource, and its derived types have a number of read/write properties for implementing caching, as listed in Table 17-1.

Table 17-1. Data source control properties for caching

Property

Type

Description

   

CacheDuration

Integer

Length of time, in seconds, that data is cached before the cache is invalidated. Default value is Infinite.

   

CacheExpirationPolicy

DataSourceCacheExpiry

Default is Absolute. The other possible value is Sliding, in which case the countdown to cache expiration is reset every time the cache is accessed.

   

CacheKeyDependency

String

Creates a dependency between cache entries and a key. When the key expires, so does the cache.

   

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required