XmlDataSource.CacheDuration Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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.