SqlDataSource.SqlCacheDependency Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger en semikolonavgränsad sträng som anger vilka databaser och tabeller som ska användas för Microsoft SQL Server cacheberoende.
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
Egenskapsvärde
En sträng som anger vilka databaser och tabeller som ska användas för SQL Server cacheberoende.
Exempel
I följande kodexempel visas hur du skapar ett SQL Server cacheberoende och anger egenskapen SqlCacheDependency för en SqlDataSource-kontroll. I det här exemplet avsöks databasen var 120:e sekund. Om data i tabellen Northwind Traders Employees ändras under den tiden uppdateras alla data som cachelagras av SqlDataSource kontrollen och som visas av GridView kontrollen av SqlDataSource kontrollen nästa gång databasen avsöks.
<%@ 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>
Kommentarer
Kontrollen SqlDataSource stöder en valfri förfalloprincip baserat på SqlCacheDependency objektet för datacachen (tjänsten måste konfigureras för databasservern).
Strängen SqlCacheDependency identifierar databaser och tabeller enligt samma format som används av direktivet @ Page, där den första delen av strängen är en reťazec pripojenia till en Microsoft SQL Server-databas, följt av en kolongränsare och slutligen namnet på databastabellen (till exempel "connectionstring1:table1"). Om egenskapen SqlCacheDependency är beroende av mer än en tabell avgränsas reťazec pripojenia-och-tabellnamnparen med semikolon (till exempel "connectionstring1:table1";connectionstring2:table2").
Important
När du använder klientpersonifiering under Microsoft Windows authentication cachelagras data när den första användaren kommer åt data. Om en annan användare begär samma data hämtas data från cacheminnet. Data hämtas inte genom att göra ett nytt anrop till databasen för att verifiera användarens åtkomst till data. Om du förväntar dig att fler än en användare ska komma åt data och du vill att varje hämtning till data ska verifieras av säkerhetskonfigurationerna för databasen ska du inte använda cachelagring.