Как реализовать отправленные сервером события в MVC3 с использованием .NET? - PullRequest
3 голосов
/ 06 сентября 2011

Я хочу создать приложение фида с использованием SSE в MVC .NET.Я искал в Интернете, но я не могу найти пример или способ реализовать SSE в MVC.Я разработал очень грязное решение, в котором View вызывает контроллер, который вызывает второй View, и этот 2nd View делает толчок к первому.Я надеюсь, что кто-то может помочь.Спасибо.

Ответы [ 3 ]

1 голос
/ 20 января 2013

Если ASP.NET WebApi является опцией, вы можете проверить мою библиотеку ServerSentEvents4Net. Код установлен на Github , а также доступен на Nuget .

1 голос
/ 27 апреля 2012

Взгляните на SignalR .Его очень легко настроить и запустить, и в ASP.NET есть множество примеров для начала.

0 голосов
/ 29 сентября 2015

Вот пример для реализации в с использованием (также должно работать нормально для MVC3) Контроллер1009 *

 public ActionResult Index()
        {
            ViewBag.Message = "SSE WITH ASP.NET MVC";
            return View();
        }
        public ActionResult Message()
        {
            var result = string.Empty;
            var sb = new StringBuilder();
            sb.AppendFormat("data: {0}\n\n", DateTime.Now.ToString());
            return Content(sb.ToString(), "text/event-stream");

        }

Просмотреть деталь:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
        <script type="text/javascript">

            function contentLoaded() {
                var source = new EventSource('home/message');
                //var ul = $("#messages");
                source.onmessage = function (e) {

                    var li = document.createElement("li");
                    var returnedItem = e.data;
                    li.textContent = returnedItem;
                    $("#messages").append(li);
                }
            };

            window.addEventListener("DOMContentLoaded", contentLoaded, false);
        </script>
        <h2><%: ViewBag.Message%></h2>
        <p>
            SSE WITH ASP.NET MVC
        </p>
        <ul id="messages">
        </ul>

Вывод:

enter image description here

...