XmlDataSource.CacheDuration Özellik

Tanım

Veri kaynağı denetiminin aldığı verileri önbelleğe aldığı süreyi saniye cinsinden alır veya ayarlar.

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

Özellik Değeri

Int32

Denetimin XmlDataSource bir veri alma işleminin sonuçlarını önbelleğe alma saniye sayısı. Varsayılan değer 0’dır.

Öznitelikler

Örnekler

Aşağıdaki kod örneği, bir XML dosyasındaki verileri görüntülemek için denetimi kullanırken önbelleğe almayı etkinleştirmeyi XmlDataSource gösterir. Önbelleğe Alma özelliği olarak ayarlandığında true ve CacheDuration değeri veri kaynağı denetimi tarafından verilerin önbelleğe alınma saniye sayısına ayarlandığında etkinleştirilirEnableCaching.

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

Kod örneğindeki XML dosyasında aşağıdaki veriler vardır:

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

Açıklamalar

Denetim XmlDataSource , aşağıdakiler geçerli olduğunda verileri otomatik olarak önbelleğe alır:

  • EnableCaching özelliği true olarak ayarlanmıştır.

  • CacheDuration özelliği, önbellek geçersiz kılınmadan önce önbelleğin verileri depoladığı saniye sayısını gösteren 0'dan büyük bir değere ayarlanır.

XML verilerini içeren dosyanın özelliğinde veya içeriğinde yapılan herhangi bir değişiklik Data önbelleğin geçersiz kılınmasına neden olur.

Varsayılan olarak, CacheDuration özelliği belirsiz bir önbelleği gösteren 0 olarak ayarlanır ve bağlı olduğu XML dosyası değiştirilene kadar veri kaynağı verileri önbelleğe alır.

Önbelleğin davranışı, süre ve CacheExpirationPolicy ayarın bir bileşimi tarafından yönetilir. olarak ayarlanırsa CacheExpirationPolicy Absolute, XmlDataSource denetim ilk veri alma işleminde verileri önbelleğe alır, tarafından CacheDurationbelirtilen süre boyunca bellekte tutar ve zaman geçtikten sonra geçersiz kılır. Önbellek bir sonraki işlemde yenilenir. olarak ayarlanırsa CacheExpirationPolicy Sliding, veri kaynağı denetimi ilk veri alma işleminde verileri önbelleğe alır, ancak izleyen her işlemde önbelleğini tuttuğu zaman penceresini sıfırlar. Önbelleğin süresi yalnızca son veri alımından bu yana olan süreye CacheDuration eşit bir süre boyunca etkinlik olmadığında sona erer.

Şunlara uygulanır

Ayrıca bkz.