SqlDependency.Start Метод

Определение

Запускает прослушиватель для получения уведомлений об изменении зависимостей.

Перегрузки

Имя Описание
Start(String)

Запускает прослушиватель для получения уведомлений об изменении зависимостей из экземпляра SQL Server, указанного строка подключения.

Start(String, String)

Запускает прослушиватель для получения уведомлений об изменении зависимостей из экземпляра SQL Server, указанного строка подключения с помощью указанной очереди SQL Server Service Broker.

Комментарии

Прослушиватель SqlDependency перезапускается при возникновении ошибки в подключении SQL Server.

Можно выполнить несколько вызовов Start метода, при условии следующих ограничений:

  • Допустимы несколько вызовов с одинаковыми параметрами (те же строка подключения и Windows учетные данные в вызывающем потоке).

  • Несколько вызовов с разными строками подключения допустимы до тех пор, пока:

    • Каждая строка подключения указывает другую базу данных или

    • Каждый строка подключения указывает другого пользователя или

    • Вызовы приходят из разных доменов приложений.

Вы можете правильно работать SqlDependency для приложений, использующих несколько потоков, чтобы представлять разные учетные данные пользователя без предоставления роли dbo группе, так как разные пользователи могут подписаться и прослушивать (с помощью SqlCacheDependency или SqlCommand) очередь уведомлений, созданную администратором. При запуске соответствующего домена приложения вызовите учетные данные (Windows) пользователя, имеющего разрешение на инициализацию службы или очереди (разрешения CREATE QUEUE и CREATE SERVICE для базы данных). Убедитесь, что запуск вызывается только один раз для каждого домена приложения, в противном случае возникает неоднозначное исключение. Поток пользователя должен иметь разрешение на подписку на уведомление (разрешение SUBSCRIBE QUERY NOTIFICATIONS для базы данных). SqlDependency привязыт запрос подписки неадминистратора к службе или очереди, созданной администратором.

Start(String)

Исходный код:
System.Data.SqlClient.notsupported.cs

Запускает прослушиватель для получения уведомлений об изменении зависимостей из экземпляра SQL Server, указанного строка подключения.

public:
 static bool Start(System::String ^ connectionString);
public static bool Start(string connectionString);
static member Start : string -> bool
Public Shared Function Start (connectionString As String) As Boolean

Параметры

connectionString
String

Connection string для экземпляра SQL Server, из которого будут получать уведомления об изменениях.

Возвращаемое значение

Значение Если совместимый прослушиватель уже существует.

Исключения

Параметр connectionString имеет значение NULL.

Параметр connectionString совпадает с предыдущим вызовом этого метода, но параметры отличаются.

Метод был вызван из среды CLR.

Вызывающий объект не имеет требуемого SqlClientPermission разрешения на доступ к коду (CAS).

Последующий вызов метода был выполнен с эквивалентным connectionString параметром с другим пользователем или пользователем, который по умолчанию не соответствует той же схеме.

Кроме того, все базовые исключения SqlClient .

Комментарии

Этот метод запускает прослушиватель для AppDomain для получения уведомлений о зависимостях из экземпляра SQL Server, указанного параметром connectionString. Этот метод может вызываться несколько раз с разными строками подключения для нескольких серверов.

Дополнительные примечания см. в разделе Start.

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

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

Start(String, String)

Исходный код:
System.Data.SqlClient.notsupported.cs

Запускает прослушиватель для получения уведомлений об изменении зависимостей из экземпляра SQL Server, указанного строка подключения с помощью указанной очереди SQL Server Service Broker.

public:
 static bool Start(System::String ^ connectionString, System::String ^ queue);
public static bool Start(string connectionString, string queue);
static member Start : string * string -> bool
Public Shared Function Start (connectionString As String, queue As String) As Boolean

Параметры

connectionString
String

Connection string для экземпляра SQL Server, из которого будут получать уведомления об изменениях.

queue
String

Существующая очередь SQL Server Service Broker для использования. Если nullиспользуется очередь по умолчанию.

Возвращаемое значение

Значение Если совместимый прослушиватель уже существует.

Исключения

Параметр connectionString имеет значение NULL.

Параметр connectionString совпадает с предыдущим вызовом этого метода, но параметры отличаются.

Метод был вызван из среды CLR.

Вызывающий объект не имеет требуемого SqlClientPermission разрешения на доступ к коду (CAS).

Последующий вызов метода был выполнен с эквивалентным connectionString параметром, но другим пользователем или пользователем, который не по умолчанию использует ту же схему.

Кроме того, все базовые исключения SqlClient .

Комментарии

Этот метод запускает прослушиватель для AppDomain для получения уведомлений о зависимостях из экземпляра SQL Server, указанного параметром connectionString. Этот метод может вызываться несколько раз с разными строками подключения для нескольких серверов.

Если имя очереди не указано, SqlDependency создает временную очередь и службу на сервере, который используется для всего процесса, даже если процесс включает несколько AppDomain. Очередь и служба автоматически удаляются при завершении работы приложения.

Дополнительные примечания см. в разделе Start.

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

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