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 объекты, настроенные для одного сервера базы данных. Если вы разрабатываете приложение, в котором требуются надежные уведомления с минимальной задержкой при изменении данных, ознакомьтесь с разделами "Планирование эффективной стратегии уведомлений запросов" и "Альтернативы уведомлениям запросов" в статье "Планирование уведомлений".
Дополнительные сведения см. в разделе Query Notifications in SQL Server and Building Notification Solutions.
Замечание
Событие OnChange может быть создано в другом потоке, отличном от потока, инициируемого выполнением команды.
Уведомления о запросах поддерживаются только для инструкций SELECT, которые соответствуют списку конкретных требований.
Конструкторы
| Имя | Описание |
|---|---|
| SqlDependency() |
Создает новый экземпляр SqlDependency класса с параметрами по умолчанию. |
| SqlDependency(SqlCommand, String, Int32) |
Создает новый экземпляр SqlDependency класса, связывает его с SqlCommand параметром и задает параметры уведомлений и значение времени ожидания. |
| SqlDependency(SqlCommand) |
Создает новый экземпляр SqlDependency класса и связывает его с параметром SqlCommand . |
Свойства
| Имя | Описание |
|---|---|
| HasChanges |
Возвращает значение, указывающее, изменился ли один из результирующих наборов, связанных с зависимостью. |
| Id |
Возвращает значение, однозначно определяющее этот экземпляр SqlDependency класса. |
Методы
| Имя | Описание |
|---|---|
| AddCommandDependency(SqlCommand) |
Связывает объект с этим SqlDependency экземпляромSqlCommand. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| Start(String, String) |
Запускает прослушиватель для получения уведомлений об изменении зависимостей из экземпляра SQL Server, указанного строка подключения с помощью указанной очереди SQL Server Service Broker. |
| Start(String) |
Запускает прослушиватель для получения уведомлений об изменении зависимостей из экземпляра SQL Server, указанного строка подключения. |
| Stop(String, String) |
Останавливает прослушиватель для подключения, указанного в предыдущем Start вызове. |
| Stop(String) |
Останавливает прослушиватель для подключения, указанного в предыдущем Start вызове. |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
| Имя | Описание |
|---|---|
| OnChange |
Происходит при получении уведомления для любой команды, связанной с этим SqlDependency объектом. |