SqlDependency Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Объект SqlDependency представляет зависимость уведомления о запросе между приложением и экземпляром SQL Server. Приложение может создавать объект SqlDependency и регистрироваться для получения уведомлений через обработчик событий OnChangeEventHandler.
public ref class SqlDependency sealed
public sealed class SqlDependency
type SqlDependency = class
Public NotInheritable Class SqlDependency
- Наследование
-
SqlDependency
Комментарии
SqlDependency идеально подходит для сценариев кэширования, где ASP.NET приложению или службе среднего уровня необходимо хранить определенные сведения в кэше в памяти. SqlDependency позволяет получать уведомления при изменении исходных данных в базе данных, чтобы можно было обновить кэш.
Чтобы настроить зависимость, необходимо связать SqlDependency объект с одним или SqlCommand несколькими объектами. Чтобы получать уведомления, необходимо подписаться на OnChange событие. Дополнительные сведения о требованиях к созданию запросов для уведомлений см. в разделе Работа с уведомлениями запросов.
Примечание
SqlDependency был разработан для использования в службах ASP.NET или среднего уровня, где существует относительно небольшое количество серверов с активными зависимостями от базы данных. Он не предназначен для использования в клиентских приложениях, где на сотнях или тысячах клиентских компьютеров объекты SqlDependency будут настроены для одного сервера базы данных. Если вы разрабатываете приложение, для которого требуются надежные уведомления на секунду при изменении данных, ознакомьтесь с разделами Планирование стратегии эффективных уведомлений о запросах и Альтернативы уведомлениям о запросах в статье Планирование уведомлений .
Дополнительные сведения см. в разделах Уведомления о запросах в SQL Server и Создание решений для уведомлений.
Примечание
Событие OnChange может быть создано в потоке, отличном от потока, который инициировал выполнение команды.
Уведомления о запросах поддерживаются только для инструкций SELECT, которые соответствуют конкретным требованиям.
Конструкторы
SqlDependency() |
Создает новый экземпляр класса SqlDependency, используя значения по умолчанию. |
SqlDependency(SqlCommand) |
Создает новый экземпляр класса SqlDependency и связывает его с параметром SqlCommand. |
SqlDependency(SqlCommand, String, Int32) |
Создает новый экземпляр класса SqlDependency и связывает его с параметром SqlCommand, а также задает параметры уведомления и таймаут. |
Свойства
HasChanges |
Возвращает значение, указывающее, изменился ли какой-либо из результирующих наборов, связанных с данной зависимостью. |
Id |
Возвращает значение, являющееся уникальным идентификатором данного экземпляра класса SqlDependency. |
Методы
AddCommandDependency(SqlCommand) |
Связывает объект SqlCommand с этим экземпляром SqlDependency. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
Start(String) |
Запускает прослушиватель для получения уведомлений об изменении зависимости от экземпляра SQL Server, заданного в строке подключения. |
Start(String, String) |
Запускает прослушиватель для получения уведомлений об изменении зависимости от экземпляра SQL Server, заданного в строке подключения, с использованием заданной очереди сервис-брокера SQL Server. |
Stop(String) |
Останавливает прослушиватель для подключения, заданного в предыдущем вызове Start. |
Stop(String, String) |
Останавливает прослушиватель для подключения, заданного в предыдущем вызове Start. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
OnChange |
Генерируется при получении уведомления для любой команды, связанной с данным объектом SqlDependency. |