Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

SqlDataSource.EnableCaching-Eigenschaft

Aktualisiert: November 2007

Ruft einen Wert ab, der angibt, ob für das SqlDataSource-Steuerelement die Zwischenspeicherung von Daten aktiviert ist, oder legt diesen fest.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

public virtual bool EnableCaching { get; set; }
/** @property */
public boolean get_EnableCaching()
/** @property */
public  void set_EnableCaching(boolean value)

public function get EnableCaching () : boolean
public function set EnableCaching (value : boolean)
<asp:SqlDataSource EnableCaching="True|False" />

Eigenschaftenwert

Typ: System.Boolean
true, wenn die Zwischenspeicherung von Daten für das Datenquellen-Steuerelement aktiviert ist, andernfalls false. Der Standardwert ist false.

AusnahmeBedingung
NotSupportedException

Die EnableCaching-Eigenschaft wird auf true festgelegt, wenn die Zwischenspeicherung nicht von SqlDataSource unterstützt wird.

Das SqlDataSource-Steuerelement unterstützt das Zwischenspeichern von Daten. Wenn Daten zwischengespeichert werden, ruft die Select-Methode Daten aus dem Cache ab (und nicht aus der zugrunde liegenden Datenbank). Wenn der Cache abläuft, ruft die Select-Methode Daten aus der zugrunde liegenden Datenbank ab und speichert diese Daten erneut im Cache.

Das SqlDataSource-Steuerelement führt automatisch eine Zwischenspeicherung von Daten durch, wenn die EnableCaching-Eigenschaft auf true und die CacheDuration-Eigenschaft auf einen Wert größer als 0 (null) festgelegt wurden, wodurch die Anzahl der Sekunden angegeben wird, die die Daten zwischengespeichert werden, bevor aktualisierte Daten abgerufen werden.

4tzds5fw.alert_security(de-de,VS.90).gifSicherheitshinweis:

Wenn Sie in der Microsoft Windows-Authentifizierung mit Clientidentitätswechsel arbeiten, werden die Daten zwischengespeichert, sobald der erste Benutzer auf die Daten zugreift. Wenn ein anderer Benutzer die gleichen Daten anfordert, werden die Daten aus dem Cache abgerufen. Die Daten werden also nicht durch einen weiteren Aufruf der Datenbank abgerufen, um den Zugriff des Benutzers auf die Daten zu verifizieren. Wenn Sie den Datenzugriff von mehreren Benutzern erwarten und möchten, dass jeder Datenabruf aus der Datenbank von den Sicherheitskonfigurationen überprüft wird, sollten Sie die Funktion der Zwischenspeicherung nicht verwenden.

Im folgenden Codebeispiel wird veranschaulicht, wie Daten aus der Datenbank Northwind in Microsoft SQL Server abgerufen und bei aktivierter Zwischenspeicherung in einem GridView-Steuerelement angezeigt werden. Die EnableCaching-Eigenschaft wird auf true und CacheDuration wird auf 20 Sekunden festgelegt. Da die CacheExpirationPolicy-Eigenschaft standardmäßig auf das Absolute-Feld festgelegt ist, werden den Benutzern dieser Seite alle 20 Sekunden aktualisierte Daten angezeigt.

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


<!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="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;"
                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>


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0
Anzeigen: