SignalR: как я могу передать сообщение на другую страницу приложения

Я создаю тестовое приложение, в котором можно загрузить некоторые файлы, и уведомление об успешной загрузке будет передано администратору, что-то вроде уведомления на www.ge.tt или уведомления панели в Facebook.

у меня две страницы

a)Download.aspx

b)LandingPage.aspx

In Download.aspx

    function PushNotification() {
        alert("I ran Upto Here");
        //Declare a proxy to Reference a Hub
        var notification = $.connection.notificationHub;

        //Start a Connection
        $.connection.hub.start().done(function () {
            notification.server.send(21);
            //$("#hdnFileId").val()
            alert("I ran Upto Here 2 ");


        });
        notification.client.broadcastMessage = function (FileID) {

            alert("file was Downloaded" + FileID);
        };
    }

Здесь две разные вкладки/браузер работают нормально, показывая сообщение alert, если страница загружается.

но я хочу использовать широковещательное сообщение в моем LandingPage.aspx

вот Дж

$(function () {

var notification = $.connection.notificationHub;

    notification.client.broadcastMessage = function (FileID) {

    alert("file was Downloaded" + FileID);
};

});

И мой хабкласс..

namespace TestApplication.Entities
{
  public class NotificationHub : Hub
  {
    //public void Hello()
    //{
    //    Clients.All.hello();
    //}

    public void Send(int FileID)
    {
        Clients.All.broadcastMessage(FileID);
    }
}
}

но уведомление сюда не приходит, что здесь не так?


person Shekhar Pankaj    schedule 06.04.2015    source источник


Ответы (1)


Вы не начали подключение в LandingPage.aspx

Попробуйте так в LandingPage.aspx

var notification = $.connection.notificationHub;
$.connection.hub.start(); 
notification.client.broadcastMessage = function (FileID) {
   alert("file was Downloaded" + FileID);
};
person Anik Islam Abhi    schedule 07.04.2015