Не могу вызвать методы сервера в SignalR

Я работал с SignalR с MVC4 в течение нескольких недель и по большей части добился успеха, когда дело доходит до простых настроек. У меня не было проблем с отправкой сообщений всем клиентам с сервера с настройками одной страницы и концентратором.

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

в моем _Layout.cshtml

 var dashboardhub;
    $(document).ready(function () {
        dashboardhub = $.connection.dashboardHub;

        dashboardhub.client.connect = function () { };
        window.hubReady = $.connection.hub.start();
 }); 

в моем Index.cshtml

window.hubReady.done(function () {
            dashboardhub.server.addGroup('@ViewContext.RouteData.Values["area"].ToString()');
        }).fail(function () {
            console.log('connection failed');
        }); 

В моем классе DashboardHub

public class DashboardHub : Hub {        

    /// <summary>
    /// Constructor
    /// </summary>
    public DashboardHub() {            

    }

    public void AddGroup(string group) {            
        this.Groups.Add(Context.ConnectionId, group);            
    }
}

Когда Dashboardhub.server.addGroup запускается на стороне клиента, я никогда не вижу, чтобы он попадал в серверный метод AddGroup. Это, очевидно, затрудняет создание групп.

Вполне возможно, что я что-то упускаю, но я не совсем уверен, что это может быть. Любые указатели будут очень признательны.

РЕДАКТИРОВАТЬ: Извините за бессмысленный пост. В конструкторе хаба было что-то, что вызывало исключение, но это было очень незаметно. Очевидно, что этого нет в коде, который я разместил, но в основном я добавил обработчик события PropertyChanged для объекта, который был нулевым в конструкторе. Это фактически сломало весь хаб, который не разрешал вызовы сервера.


person SnareHanger    schedule 15.05.2013    source источник
comment
Ответьте на свой вопрос и отметьте его как отвеченный.   -  person Tim B James    schedule 15.05.2013
comment
Я сделаю это через несколько часов, когда мне разрешат   -  person SnareHanger    schedule 15.05.2013


Ответы (1)


Извините за бессмысленный пост. В конструкторе хаба было что-то, что вызывало исключение, но это было очень незаметно. Очевидно, что этого нет в коде, который я разместил, но в основном я добавил обработчик события PropertyChanged для объекта, который был нулевым в конструкторе. Это фактически сломало весь хаб, который не разрешал вызовы сервера.

person SnareHanger    schedule 31.05.2013