Как получить уведомление от sqltabledependency в любой сети? Как сделать сеть независимой? - PullRequest
0 голосов
/ 04 ноября 2018

Я заметил, что событие SqlTableDependency запускается, когда я нахожусь в моей офисной сети, но не запускается в моей домашней сети. Я сделал следующие шаги:

  1. Включить брокера
  2. Создание очередей, сервисов
  3. Я подписался на мои заявки на C #
  4. Версия SQL также SQL2014

В своем приложении на C # я добавил следующий код:

//created the new instance 
tableDependency = new SqlTableDependency<User>
                      (mStarterConnectionString, tableName); //subscribed to the events

tableDependency.OnChanged += TableDependency_OnChanged;
tableDependency.OnStatusChanged += 
                      TableDependency_OnStatusChanged;
tableDependency.OnError += TableDependency_OnError;
tableDependency.TraceLevel = 
                      System.Diagnostics.TraceLevel.Verbose;
tableDependency.TraceListener = new 
                      TextWriterTraceListener(Console.Out);
tableDependency.Start();

Никаких действий не происходит после выполнения команды WAITFOR, даже если я вставляю новую запись в таблицу, где SqlDependencyTest - имя таблицы. Я получаю сообщение об ошибке в моей консоли:

[Server: . Database: SqlDependencyTest]Queue
dbo_Users_13e195b2-0803-4f68-b30f-9dd9fb33546a_Receiver created.
[Server: . Database: SqlDependencyTest]Queue
dbo_Users_13e195b2-0803-4f68-b30f-9dd9fb33546a_Sender created.
[Server: . Database: SqlDependencyTest]Service broker
dbo_Users_13e195b2-0803-4f68-b30f-9dd9fb33546a_Sender created.
[Server: . Database: SqlDependencyTest]Service broker
dbo_Users_13e195b2-0803-4f68-b30f-9dd9fb33546a_Receiver created.
[Server: . Database: SqlDependencyTest]Procedure
dbo_Users_13e195b2-0803-4f68-b30f-9dd9fb33546a created. [Server: .
Database: SqlDependencyTest]Conversation with handler
1ef8f17b-dcdf-e811-b097-5ce0c5147b2e started. [Server: . Database:
SqlDependencyTest]Trigger
dbo_Users_13e195b2-0803-4f68-b30f-9dd9fb33546a created. [Server: .
Database: SqlDependencyTest]All OK! Database objects created with
naming dbo_Users_13e195b2-0803-4f68-b30f-9dd9fb33546a. [Server: .
Database: SqlDependencyTest]Waiting for receiving Users's records
change notifications. [Server: . Database: SqlDependencyTest]Get in
WaitForNotifications.
TableDependency.SqlClient.Base.EventArgs.StatusChangedEventArgs
[Server: . Database: SqlDependencyTest]Connection opened.
TableDependency.SqlClient.Base.EventArgs.StatusChangedEventArgs
[Server: . Database: SqlDependencyTest]Executing WAITFOR command..
...