SqlDataSource.SqlCacheDependency Proprietà

Definizione

Ottiene o imposta una stringa delimitata da punti e virgola che indica i database e le tabelle da utilizzare per la dipendenza della cache da 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

Valore della proprietà

Stringa che indica i database e le tabelle da utilizzare per la dipendenza della cache da SQL Server.

Esempio

Nell'esempio di codice seguente viene illustrato come creare una dipendenza della cache di SQL Server e impostare la SqlCacheDependency proprietà di un SqlDataSource controllo. In questo esempio il database viene eseguito il polling ogni 120 secondi. Se i dati nella tabella Northwind Traders Employees cambiano durante tale periodo, tutti i dati memorizzati nella cache dal SqlDataSource controllo e visualizzati GridView dal controllo vengono aggiornati dal SqlDataSource controllo alla successiva esecuzione del polling del database.

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

Commenti

Il SqlDataSource controllo supporta criteri di scadenza facoltativi in base all'oggetto SqlCacheDependency per la cache dei dati (il servizio deve essere configurato per il server di database).

La SqlCacheDependency stringa identifica i database e le tabelle in base allo stesso formato utilizzato dalla @ Page direttiva, dove la prima parte della stringa è una stringa di connessione a un database di Microsoft SQL Server, seguita da un delimitatore di due punti e infine il nome della tabella di database , ad esempio "connectionstring1:table1". Se la SqlCacheDependency proprietà dipende da più tabelle, le coppie nome stringa e tabella di connessione sono separate da punti e virgola , ad esempio "connectionstring1:table1";connectionstring2:table2".

Importante

Quando si usa la rappresentazione client nell'autenticazione di Microsoft Windows, i dati vengono memorizzati nella cache quando il primo utente accede ai dati. Se un altro utente richiede gli stessi dati, i dati vengono recuperati dalla cache. I dati non vengono recuperati eseguendo un'altra chiamata al database per verificare l'accesso dell'utente ai dati. Se si prevede che più utenti accedono ai dati e si desidera che ogni recupero ai dati venga verificato dalle configurazioni di sicurezza per il database, non usare la memorizzazione nella cache.

Si applica a

Vedi anche