Неопределенная ошибка Rx при использовании концентраторов signalR

Я пытаюсь реализовать push-уведомления с помощью концентраторов signalR. У меня есть пример кода, при запуске которого я получаю сообщение об ошибке времени выполнения JavaScript: «Rx» не определен

Эта ошибка возникает в файле динамического сигнализатора/концентраторов. Я добавил все необходимые ссылки на Javascript, т. е. jquery, signalR и signalr/hubs.

Что мне не хватает?

Мой код выглядит примерно так:

Файл Global.asax имеет это

public class Global : System.Web.HttpApplication
    {

        protected void Application_Start(object sender, EventArgs e)
        {


            RouteTable.Routes.MapHubs("~/signalr");


        }

Мой концентратор определяется так

 [HubName("HealthCheck")]
    public class MyConnectionClass : Hub
    {
        public static List<string> messages = new List<string>();

        public void GetServiceState()
        {
            Clients.updateMessages(messages);
        }

        public void UpdateServiceState()
        {
            messages.Add(DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"));

            Clients.updateMessages(messages);
        }

И мой клиент в javascript, как это

 $(function () {
                // creates a proxy to the health check hub
                var healthCheckHub = $.connection.healthCheck;

                // handles the callback sent from the server
                healthCheckHub.updateMessages = function (data) {
                    $("li").remove();

                    $.each(data, function () {
                        $('#messages').append('<li>' + this + '</li>');
                    });
                };

                $("#trigger").click(function () {
                    healthCheckHub.server.updateServiceState();
                });

                // Start the connection and request current state
                $.connection.hub.start(function () {
                    healthCheckHub.server.getServiceState();
                });
            });

Также я добавил все необходимые ссылки на js в клиенте. Я выбрал этот образец из здесь Этого достаточно или я что-то упустил?

Спасибо


person RedBricks    schedule 14.12.2012    source источник
comment
Можете ли вы опубликовать минимальный пример кода, который воспроизводит проблему?   -  person Pete    schedule 14.12.2012


Ответы (1)


Учитывая, что ошибка связана с тем, что Rx не определен, мне интересно, возможно, вы установили неправильный пакет NuGet. Похоже, вместо этого вы установили SignalR.Reactive.

Я думаю, что это пакет, который вам действительно нужен. (Обратите внимание, что это предварительная версия, и я думаю, что имена пакетов изменились совсем недавно, поэтому, возможно, руководство, которому вы следуете, немного устарело, что могло быть причиной путаницы.)

person IanR    schedule 17.12.2012