SqlDataSource.SqlCacheDependency Свойство

Определение

Возвращает или задает разделенную точками с запятой строку, которая показывает, какие базы данных и таблицы используются для зависимости кэша 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

Значение свойства

String

Строка, которая показывает, какие базы данных и таблицы используются для зависимости кэша Microsoft SQL Server.

Примеры

В следующем примере кода показано, как создать зависимость кэша SQL Server и задать SqlCacheDependency свойство SqlDataSource элемента управления. В этом примере база данных опрашивается каждые 120 секунд. Если данные в таблице "Сотрудники Northwind Traders" изменяются в течение этого времени, все данные, кэшированные SqlDataSource элементом управления и отображаемые GridView элементом управления, обновляются элементом SqlDataSource управления при следующем опросе базы данных.

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

Комментарии

Элемент SqlDataSource управления поддерживает необязательную политику истечения срока действия на SqlCacheDependency основе объекта для кэша данных (служба должна быть настроена для сервера базы данных).

Строка SqlCacheDependency определяет базы данных и таблицы в соответствии с тем же форматом, который используется @ Page директивой, где первая часть строки является строкой подключения к базе данных Microsoft SQL Server, за которой следует разделитель двоеточия и, наконец, имя таблицы базы данных (например, "connectionstring1:table1"). SqlCacheDependency Если свойство зависит от нескольких таблиц, пары имен строк подключения и таблицы разделяются точкой с запятой (например, "connectionstring1:table1";connectionstring2:table2").

Важно!

При использовании олицетворения клиента в microsoft проверка подлинности Windows данные кэшируются, когда первый пользователь обращается к данным. Если другой пользователь запрашивает те же данные, данные извлекаются из кэша. Данные не извлекаются путем выполнения другого вызова к базе данных для проверки доступа пользователя к данным. Если вы ожидаете, что несколько пользователей будут получать доступ к данным, и вы хотите, чтобы каждое извлечение данных проверялось с помощью конфигураций безопасности для базы данных, не используйте кэширование.

Применяется к

См. также раздел