Отправка данных из приложения silverlight конкретному пользователю в приложении mvc - PullRequest
0 голосов
/ 31 марта 2012

У меня есть приложение MVC, где вы должны быть зарегистрированы, чтобы войти в систему. Итак, у вас есть страница вашего профиля и т. Д. ... В рамках приложения у меня есть чат для всех пользователей (страница Silverlight). Вы входите в чат со страницы своего профиля. У вас есть список онлайн-пользователей (которые вошли на сайт и не обязательно зашли на страницу чата), но обмениваться сообщениями вы можете только с пользователями, которые зашли на страницу чата. Иначе они их не увидят. Здесь моя проблема. Итак, я хочу реализовать следующую функциональность: если пользователь, который не зашел на страницу чата, был выбран другим для начала разговора в чате (silverlight), он должен получить всплывающее сообщение на странице профиля HIS (mvc) с приглашением на чат. Я понимаю, как отправить данные из Silverlight в MVC через формат WebClient и JSON. Я не понимаю, как добраться до страницы профиля конкретного пользователя. Я могу подумать только о таблице базы данных с такими приглашениями и таймером на странице профиля, чтобы проверить их.
Пожалуйста, выражайте свои идеи, мысли или мнения по этому вопросу. Буду признателен за любую помощь. Заранее спасибо.

1 Ответ

0 голосов
/ 31 марта 2012

Может быть, вам стоит проверить SignalR.

Как вы упомянули, вам нужен какой-то способ сообщить другому клиенту об этом сообщении, периодически проверяя. SignalR делает это для вас, и в современных браузерах он делает Websockets еще лучше.

Его очень легко настроить, и вы можете создать приложение для чата в несколько строк кода. Без необходимости сохранять сообщения в базе данных (когда вы этого не хотите).

Ознакомьтесь с этой записью в блоге для примера приложения чата: http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...