2013-04-25 1 views
0

Возможно ли выполнить публичный метод, объявленный в концентраторе signalr из кода, расположенного за страницей веб-форм?методы класса концентратора acess signalr из кода позади

Я нашел примеры того, как отправить сообщение клиенту из кода за помощью

var context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>(); 

context.Clients.All.exampleMethod(); 

, но я хотел бы получить доступ открытого метода в ступице, например, для возврата набора клиентских идентификаторов связанных с пользователем от ConcurrentDictionary или данных.

Кто-нибудь знает, если это возможно, и если да, то как это сделать без трансляции сообщение клиенту и обратно.

ответ

0

Необходимо зарегистрировать идентификаторы контактов клиентов при их подключении. Когда у вас есть этот идентификатор; Вы можете отправить сообщение этому клиенту с помощью

var context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>(); 
context.Clients[connectionid].exampleMethod(); 

Прости меня, если я не получил, что 100% прав, но я на поезде

Эта ссылка должна дать вам некоторую помощь ... http://www.tugberkugurlu.com/archive/mapping-asp-net-signalr-connections-to-real-application-users

+0

Я сделал это, используя статический параллельный словарь, как в учебниках. Я понял, что если я создам экземпляр концентратора и вызову публичные методы, я могу получить доступ к этой информации. благодаря – Paul

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