XmlDataSource.CacheDuration Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit la durée, en secondes, de la mise en cache par le contrôle de source de données des données qu'il a récupérées.
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
Valeur de propriété
Nombre de secondes de la mise en cache par le contrôle XmlDataSource des résultats d'une opération de récupération de données. La valeur par défaut est 0.
- Attributs
Exemples
L’exemple de code suivant montre comment activer la mise en cache lors de l’utilisation du XmlDataSource contrôle pour afficher les données contenues dans un fichier XML. La mise en cache est activée lorsque la EnableCaching propriété a la true
valeur et que le CacheDuration est défini sur le nombre de secondes pendant lesquelles les données sont mises en cache par le contrôle de source de données.
<%@ 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>
Le fichier XML dans l’exemple de code contient les données suivantes :
<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>
Remarques
Le XmlDataSource contrôle met automatiquement en cache les données lorsque les éléments suivants s’appliquent :
La propriété EnableCaching est définie sur
true
.La CacheDuration propriété est définie sur une valeur supérieure à 0, ce qui indique le nombre de secondes pendant lesquelles le cache stocke les données avant que le cache ne soit invalidé.
Toute modification apportée à la Data propriété ou au contenu du fichier qui contient les données XML entraîne l’invalidation du cache.
Par défaut, la CacheDuration propriété est définie sur 0, ce qui indique un cache indéfini, et la source de données met en cache les données jusqu’à ce que le fichier XML dont elle dépend soit modifié.
Le comportement du cache est régi par une combinaison de la durée et du CacheExpirationPolicy paramètre. Si CacheExpirationPolicy a la Absolutevaleur , le XmlDataSource contrôle met en cache les données lors de la première opération de récupération des données, les conserve en mémoire pendant la durée spécifiée par CacheDuration, et les invalide une fois le délai écoulé. Le cache est ensuite actualisé lors de l’opération suivante. Si CacheExpirationPolicy est défini sur Sliding, le contrôle de source de données met en cache les données lors de la première opération de récupération des données, mais réinitialise la fenêtre de temps pour laquelle il conserve le cache à chaque opération suivante. Le cache n’expirera que s’il n’y a aucune activité pendant une durée égale à la CacheDuration depuis la dernière récupération des données.