我正在创建一个测试应用程序,在那里可以下载一些文件,下载成功后通知将传播到管理员,类似于中的通知www.ge.tt,或Facebook上的小组通知。
我有两页
a) Download.aspx
b) LandingPage.aspx
在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
中使用brodcast消息
这是Js
$(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);
}
}
}
但是通知没有来,怎么了?
您没有在LandingPage.aspx
中启动连接
在LandingPage.aspx
中这样尝试
var notification = $.connection.notificationHub;
$.connection.hub.start();
notification.client.broadcastMessage = function (FileID) {
alert("file was Downloaded" + FileID);
};