XmlDataSource.EnableCaching Eigenschap

Definitie

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het XmlDataSource besturingselement gegevenscache heeft ingeschakeld.

public:
 virtual property bool EnableCaching { bool get(); void set(bool value); };
public virtual bool EnableCaching { get; set; }
member this.EnableCaching : bool with get, set
Public Overridable Property EnableCaching As Boolean

Waarde van eigenschap

true als gegevenscache is ingeschakeld voor het besturingselement voor de gegevensbron; anders, false. De standaardwaarde is true.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u caching inschakelt wanneer u het XmlDataSource besturingselement gebruikt om gegevens weer te geven die zijn opgenomen in een XML-bestand. Caching is ingeschakeld wanneer de EnableCaching eigenschap is ingesteld op true en het CacheDuration is ingesteld op het aantal seconden dat de gegevens in de cache worden opgeslagen door het besturingselement voor de gegevensbron.

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

Het XML-bestand in het codevoorbeeld bevat de volgende gegevens:

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

Opmerkingen

Het XmlDataSource besturingselement slaat automatisch gegevens in de cache op wanneer de EnableCaching eigenschap is ingesteld op true. De eigenschap is standaard CacheDuration ingesteld op 0, wat aangeeft dat er een onbepaalde cache is. De gegevensbron slaat gegevens in de cache op totdat het XML-bestand waarvan het afhankelijk is, wordt gewijzigd. Als u de CacheDuration eigenschap instelt op een waarde die groter is dan 0, worden in de cache gegevens opgeslagen voordat u een nieuwe set opzoekt.

Als de EnableCaching eigenschap is ingesteld true op en de TransformArgumentList eigenschap is ingesteld, worden de cachevermeldingen niet automatisch ongeldig gemaakt wanneer de parameters in de lijst met transformatiesargumenten worden gewijzigd. In dat geval moet u code schrijven om de cache ongeldig te maken door de CacheKeyDependency eigenschap in te stellen.

Van toepassing op

Zie ook