XmlDataSource.CacheExpirationPolicy Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets or sets the cache expiration policy that is combined with the cache duration to describe the caching behavior of the cache that the data source control uses.

Namespace:   System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

Public Overridable Property CacheExpirationPolicy As DataSourceCacheExpiry

Property Value

Type: System.Web.UI.DataSourceCacheExpiry

One of the DataSourceCacheExpiry values. The default cache expiration policy setting is Absolute.

The behavior of the cache is governed by a combination of the CacheDuration and CacheExpirationPolicy settings. If the CacheExpirationPolicy is set to Absolute, the XmlDataSource caches data on the first data retrieval operation, holds it in memory for the amount of time specified by CacheDuration, and invalidates it after the time has lapsed. The cache is then refreshed upon the next operation. If the CacheExpirationPolicy is set to Sliding, the data source control caches data on the first data retrieval operation, but resets the time window that it holds the cache for upon each subsequent operation. The cache will expire only if there is no activity for a time equal to the CacheDuration since the last data retrieval.

The following code example demonstrates how to enable caching when using the XmlDataSource control to display data contained in an XML file. Caching is enabled when the EnableCaching property is set to true and the CacheDuration is set to the number of seconds that the data is cached by the data source control.

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

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
    <form id="form1" runat="server">

        cacheexpirationPolicy="Sliding" />

      <!- TreeView uses hierachical data, so the
          XmlDataSource uses an XmlHierarchicalDataSourceView
          when a TreeView is bound to it. -->

          <asp:treenodebinding datamember="book" textfield="title"/>


The XML file in the code example has the following data:

     <book title="Secrets of Silicon Valley" author="Sheryl Hunter"/>
     <book title="Straight Talk About Computers" author="Dean Straight"/>
     <book title="You Can Combat Computer Stress!" author="Marjorie Green"/>                
     <book title="Silicon Valley Gastronomic Treats" author="Innes del Castill"/>

.NET Framework
Available since 2.0
Return to top