Уведомления в приложении asp.net mvc - PullRequest
0 голосов
/ 12 декабря 2011

У нас есть несколько событий, которые должны вызвать уведомление пользователя.Каждый раз, когда кто-то комментирует свою стену.Каждый раз они выигрывают трофей.И т.д.

Таким образом, уведомления хранятся в базе данных, но на самом деле не связаны с какой-либо другой моделью.просто строка html, на самом деле.

Есть ли рекомендуемый способ обработки этого, кроме очевидного "в вашем контроллере, сразу после создания комментария или трофея, или что-то еще, что также создает уведомление" angle?

Ответы [ 3 ]

1 голос
/ 12 декабря 2011

У вас есть два разных типа уведомлений, один из которых запускается пользователем, а другой - кто-то другой.

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

Первый вариант - это опрос клиентов с использованием AJAX. Вы можете легко реализовать это, и это хорошо зарекомендовавший себя метод, но у вас есть некоторые накладные расходы с постоянным опросом на веб-сайте для проверки новых уведомлений. Существуют и другие решения, которые явно не используют AJAX, но работают по тому же принципу.

Другое решение, на которое я бы посоветовал вам взглянуть, - это готовящийся к выпуску протокол websockets, который уже реализован во многих браузерах. Это позволяет получать в реальном времени уведомления обратно клиенту без постоянного опроса. Существует множество служб, таких как pusher , которые выполняют большую часть тяжелой работы за вас, поэтому вы можете легко реализовать сообщение, используя простой вызов службы и сценарий на клиенте.

Примечание: в режиме реального времени = достаточно короткий период времени, когда информация все еще актуальна

1 голос
/ 12 декабря 2011

Проверка библиотеки SignalR jQuery с бэкэндом ASP.NET.

Вот подкаст Скотта Хансельмана об этом

0 голосов
/ 12 декабря 2011

Вы можете создать ActionFilter, чтобы выполнить эту проверку за вас.ActionFilters - это AOP-подобные способы выполнения действий до / после выполнения действий.Классическим примером является регистрация: допустим, вы хотите войти до / после каждого действия, но писать Log ();везде не очень сухо.Таким образом, вы можете создать logf actionfilter.См. здесь для хорошего примера.

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