XmlDataSource.CacheExpirationPolicy Свойство

Определение

Возвращает или задает политику истечения срока действия кэша, которая в сочетании со сроком кэширования описывает порядок кэширования в кэше, используемом элементом управления источником данных.

public:
 virtual property System::Web::UI::DataSourceCacheExpiry CacheExpirationPolicy { System::Web::UI::DataSourceCacheExpiry get(); void set(System::Web::UI::DataSourceCacheExpiry value); };
public virtual System.Web.UI.DataSourceCacheExpiry CacheExpirationPolicy { get; set; }
member this.CacheExpirationPolicy : System.Web.UI.DataSourceCacheExpiry with get, set
Public Overridable Property CacheExpirationPolicy As DataSourceCacheExpiry

Значение свойства

DataSourceCacheExpiry

Одно из значений перечисления DataSourceCacheExpiry. Значением параметра политики истечения срока кэширования по умолчанию является Absolute.

Примеры

В следующем примере кода показано, как включить кэширование при использовании XmlDataSource элемента управления для отображения данных, содержащихся в XML-файле. Кэширование включено, если EnableCaching свойству true присвоено значение и CacheDuration задано количество секунд, в течение которых данные кэшируются системой управления источниками данных.

<%@ Page Language="C#" %>
<!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>
</head>
<body>

    <form id="form1" runat="server">
      <asp:xmldatasource
        id="XmlDataSource1"
        runat="server"
        datafile="books.xml"
        enablecaching="True"
        cacheduration="60"
        cacheexpirationpolicy="Sliding" />

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

      <asp:treeview
        id="TreeView1"
        runat="server"
        datasourceid="XmlDataSource1">
        <databindings>
          <asp:treenodebinding datamember="book" textfield="title"/>
        </databindings>
      </asp:treeview>

    </form>
  </body>
</html>
<%@ 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>
</head>
<body>
    <form id="form1" runat="server">

      <asp:xmldatasource
        id="XmlDataSource1"
        runat="server"
        datafile="books.xml"
        enablecaching="True"
        cacheduration="60"
        cacheexpirationPolicy="Sliding" />

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

      <asp:treeview
        id="TreeView1"
        runat="server"
        datasourceid="XmlDataSource1">
        <databindings>
          <asp:treenodebinding datamember="book" textfield="title"/>
        </databindings>
      </asp:treeview>

    </form>
  </body>
</html>

XML-файл в примере кода содержит следующие данные:

<books>  
   <computerbooks>  
     <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"/>                  
   </computerbooks>  
   <cookbooks>  
     <book title="Silicon Valley Gastronomic Treats" author="Innes del Castill"/>  
   </cookbooks>  
</books>  

Комментарии

Поведение кэша регулируется сочетанием CacheDuration параметров и CacheExpirationPolicy параметров. CacheExpirationPolicy Если задано значениеAbsolute, XmlDataSource данные кэшируются при первой операции извлечения данных, хранятся в памяти в течение указанного времени CacheDurationи отменяют его после истечения времени. Затем кэш обновляется при следующей операции. CacheExpirationPolicy Если задано значениеSliding, система управления источником данных кэширует данные при первой операции извлечения данных, но сбрасывает временное окно, в котором хранится кэш при каждой последующей операции. Срок действия кэша истекает только в том случае, если нет действия в течение определенного времени, равного CacheDuration последнему получению данных.

Применяется к

См. также раздел