2015-01-13 4 views
0

У меня есть простое приложение, которое слушает уведомления SQL через SqlNotificationRequest. Из-за некоторых причин и ограничений я не могу использовать SqlDependency. (согласно SqlDependency limitations)Есть ли другой способ использования SqlNotificationRequest?

Как вы знаете, с помощью SqlNotificationRequest необходимо обрабатывать все содержимое, включая хотя бы поток для чтения уведомлений из базы данных.

Есть ли способ отбросить резьбу и создать для этого структуру событий? Я имею в виду, что .net-клиент ничего не делает, кроме ожидания того, что событие будет запущено SQL Server, например SqlDependency.

+0

В конце дня клиенту необходимо выполнить команду в каком-либо потоке, чтобы получить уведомление. Это может быть фоновый поток, который выполняет блокирующий вызов, опросы или и то, и другое (блокирование вызова с тайм-аутом, например SqlDependency). Просто поднимите событие, когда сообщение получено. –

ответ

1

Ограничения от SqlDependency исходят из ограничений Уведомления о запросах. SqlNotificationRequest also uses Query Notification и ударит точно такие же ограничения.

+0

Я не хочу использовать 'SqlNotificationRequest', я предполагаю использовать Service Broker на стороне SQL, но какой механизм в стороне .net, чтобы избежать постоянной проверки. –

+1

От .Net: подключитесь к серверу и выпустите ['RECEIVE'] (http://msdn.microsoft.com/en-us/library/ms186963.aspx). –

Смежные вопросы