Bagikan melalui


XmlDataSource.CacheDuration Properti

Definisi

Mendapatkan atau mengatur lamanya waktu, dalam hitungan detik, bahwa kontrol sumber data menyimpan data yang telah diambilnya.

public:
 virtual property int CacheDuration { int get(); void set(int value); };
[System.ComponentModel.TypeConverter(typeof(System.Web.UI.DataSourceCacheDurationConverter))]
public virtual int CacheDuration { get; set; }
[<System.ComponentModel.TypeConverter(typeof(System.Web.UI.DataSourceCacheDurationConverter))>]
member this.CacheDuration : int with get, set
Public Overridable Property CacheDuration As Integer

Nilai Properti

Jumlah detik kontrol XmlDataSource menyimpan hasil operasi pengambilan data. Nilai defaultnya adalah 0.

Atribut

Contoh

Contoh kode berikut menunjukkan cara mengaktifkan penembolokan saat menggunakan XmlDataSource kontrol untuk menampilkan data yang terkandung dalam file XML. Penembolokan diaktifkan saat EnableCaching properti diatur ke true dan CacheDuration diatur ke jumlah detik bahwa data di-cache oleh kontrol sumber data.

<%@ 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>

File XML dalam contoh kode memiliki data berikut:

<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>

Keterangan

Kontrol XmlDataSource secara otomatis menyimpan data saat hal berikut ini berlaku:

  • Properti EnableCaching disetel ke true.

  • Properti CacheDuration diatur ke nilai yang lebih besar dari 0, yang menunjukkan jumlah detik cache menyimpan data sebelum cache tidak valid.

Setiap perubahan pada Data properti atau konten file yang berisi data XML menyebabkan cache tidak valid.

Secara default, CacheDuration properti diatur ke 0, yang menunjukkan cache yang tidak terbatas, dan sumber data akan menyimpan data hingga file XML yang bergantung padanya diubah.

Perilaku cache diatur oleh kombinasi durasi dan CacheExpirationPolicy pengaturan. Jika CacheExpirationPolicy diatur ke Absolute, XmlDataSource kontrol menyimpan data pada operasi pengambilan data pertama, menyimpannya dalam memori untuk jumlah waktu yang ditentukan oleh CacheDuration, dan membatalkannya setelah waktu terhenti. Cache kemudian disegarkan pada operasi berikutnya. Jika CacheExpirationPolicy diatur ke Sliding, kontrol sumber data menyimpan data pada operasi pengambilan data pertama, tetapi mengatur ulang jendela waktu yang disimpan cache untuk setiap operasi berikutnya. Cache hanya akan kedaluwarsa jika tidak ada aktivitas untuk waktu yang sama dengan CacheDuration sejak pengambilan data terakhir.

Berlaku untuk

Lihat juga