SqlDataSource.SqlCacheDependency Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia rozdzielany średnikami ciąg wskazujący, które bazy danych i tabele mają być używane dla zależności pamięci podręcznej programu Microsoft SQL Server.
public:
virtual property System::String ^ SqlCacheDependency { System::String ^ get(); void set(System::String ^ value); };
public virtual string SqlCacheDependency { get; set; }
member this.SqlCacheDependency : string with get, set
Public Overridable Property SqlCacheDependency As String
Wartość właściwości
Ciąg wskazujący, które bazy danych i tabele mają być używane dla zależności pamięci podręcznej programu SQL Server.
Przykłady
W poniższym przykładzie kodu pokazano, jak utworzyć zależność pamięci podręcznej programu SQL Server i ustawić SqlCacheDependency właściwość kontrolki SqlDataSource . W tym przykładzie baza danych jest sondowana co 120 sekund. Jeśli dane w tabeli Northwind Traders Employees zmieniają się w tym czasie, wszystkie dane buforowane przez kontrolkę SqlDataSource i wyświetlane przez GridView kontrolkę są odświeżane przez SqlDataSource kontrolkę przy następnym sondowanie bazy danych.
<%@ Page language="c#" %>
<!--
The page uses an example configuration that includes
connection strings and a defined SqlCacheDependecy.
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<add name="MyNorthwind"
connectionString="Data Source="localhost";Integrated Security="SSPI";Initial Catalog="Northwind""
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<caching>
<sqlCacheDependency enabled="true">
<databases>
<add
name="Northwind"
connectionStringName="MyNorthwind"
pollTime="120000" />
</databases>
</sqlCacheDependency>
</caching>
</system.web>
</configuration>
-->
<!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" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="SqlDataSource1" />
<asp:sqldatasource
id="SqlDataSource1"
runat="server"
connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
selectcommand="SELECT EmployeeID,FirstName,Lastname FROM Employees"
enablecaching="True"
cacheduration="300"
cacheexpirationpolicy="Absolute"
sqlcachedependency="Northwind:Employees" />
</form>
</body>
</html>
<%@ Page language="vb" %>
<!--
The page uses an example configuration that includes
connection strings and a defined SqlCacheDependecy.
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<add name="MyNorthwind"
connectionString="Data Source="localhost";Integrated Security="SSPI";Initial Catalog="Northwind""
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<caching>
<sqlCacheDependency enabled="true">
<databases>
<add
name="Northwind"
connectionStringName="MyNorthwind"
pollTime="120000" />
</databases>
</sqlCacheDependency>
</caching>
</system.web>
</configuration>
-->
<!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" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="SqlDataSource1" />
<asp:sqldatasource
id="SqlDataSource1"
runat="server"
connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
selectcommand="SELECT EmployeeID,FirstName,Lastname FROM Employees"
enablecaching="True"
cacheduration="300"
cacheexpirationpolicy="Absolute"
sqlcachedependency="Northwind:Employees" />
</form>
</body>
</html>
Uwagi
Kontrolka SqlDataSource obsługuje opcjonalne zasady wygasania na SqlCacheDependency podstawie obiektu pamięci podręcznej danych (usługa musi być skonfigurowana dla serwera bazy danych).
Ciąg SqlCacheDependency identyfikuje bazy danych i tabele zgodnie z tym samym formatem, który jest używany przez @ Page
dyrektywę, gdzie pierwsza część parametrów jest parametrami połączenia z bazą danych programu Microsoft SQL Server, a następnie ogranicznikiem dwukropka, a na końcu nazwą tabeli bazy danych (na przykład "connectionstring1:table1"
).
SqlCacheDependency Jeśli właściwość zależy od więcej niż jednej tabeli, pary parametrów połączenia i nazwy tabeli są oddzielone średnikami (na przykład "connectionstring1:table1";connectionstring2:table2"
).
Ważne
W przypadku korzystania z personifikacji klienta w ramach uwierzytelniania systemu Microsoft Windows dane są buforowane, gdy pierwszy użytkownik uzyskuje dostęp do danych. Jeśli inny użytkownik żąda tych samych danych, dane są pobierane z pamięci podręcznej. Dane nie są pobierane przez wykonanie innego wywołania bazy danych w celu zweryfikowania dostępu użytkownika do danych. Jeśli oczekujesz, że więcej niż jeden użytkownik uzyskuje dostęp do danych i chcesz, aby każde pobieranie danych było weryfikowane przez konfiguracje zabezpieczeń bazy danych, nie używaj buforowania.