Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

SqlDataSource.EnableCaching propriété

 

Date de publication : novembre 2016

Obtient ou définit une valeur indiquant si le SqlDataSource contrôle est mise en cache de données activée.

Espace de noms:   System.Web.UI.WebControls
Assembly:  System.Web (dans System.Web.dll)

public virtual bool EnableCaching { get; set; }

Valeur de propriété

Type: System.Boolean

true Si la mise en cache des données est activée pour le contrôle de source de données ; dans le cas contraire, false. La valeur par défaut est false.

Exception Condition
NotSupportedException

Le EnableCaching est définie sur true lorsque la mise en cache n'est pas pris en charge par le SqlDataSource.

Le SqlDataSource contrôle prend en charge la mise en cache de données. Bien que les données mises en cache, le Select méthode récupère des données du cache plutôt qu’à partir de la base de données sous-jacente. Lorsque le cache expire, la Select méthode récupère les données de la base de données sous-jacente, puis remet les données.

Le SqlDataSource contrôle met automatiquement en cache les données lorsque la EnableCaching est définie sur true et le CacheDuration propriété est définie sur une valeur supérieure à 0, ce qui indique le nombre de secondes que le cache stocke les données avant de récupérer un jeu actualisé.

System_CAPS_security Sécurité Remarque

Lorsque vous utilisez l’emprunt d’identité du client avec l’authentification Microsoft Windows, les données mises en cache lorsque le premier utilisateur accède aux données. Si un autre utilisateur demande les mêmes données, les données sont récupérées à partir du cache. Les données ne sont pas récupérées en effectuant un autre appel à la base de données pour vérifier l’accès utilisateur aux données. Si vous prévoyez plusieurs utilisateurs à accéder aux données, et vous souhaitez que chaque récupération de données soit vérifiée par les configurations de sécurité pour la base de données, n’utilisez pas la mise en cache.

L’exemple de code suivant montre comment récupérer des données à partir de la base de données Northwind dans Microsoft SQL Server et les afficher dans un GridView contrôle, avec la mise en cache de données activée. Le EnableCaching est définie sur true et CacheDuration est défini sur 20 secondes. Étant donné que la CacheExpirationPolicy est définie sur le Absolute champ par défaut, les utilisateurs de cette page s’affiche les données actualisées toutes les 20 secondes.

<%@ 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:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                DataSourceMode="DataSet"
                ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
                EnableCaching="True"
                CacheDuration="20"
                SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees">
            </asp:SqlDataSource>

            <asp:GridView
                id="GridView1"
                runat="server"
                AutoGenerateColumns="False"
                DataSourceID="SqlDataSource1">
                <columns>
                    <asp:BoundField HeaderText="First Name" DataField="FirstName" />
                    <asp:BoundField HeaderText="Last Name" DataField="LastName" />
                    <asp:BoundField HeaderText="Title" DataField="Title" />
                </columns>
            </asp:GridView>

        </form>
    </body>
</html>

.NET Framework
Disponible depuis 2.0
Retour au début
Afficher: