如何使用Signalr从Hub传递数据以进行查看

问题描述

enter image description here 给定类Myhub,为什么MessageReciever函数不起作用我想在信号R馈入的跨度上显示时间函broadCastServerTime()

enter image description here

解决方法

您可以使用JQuery onReady事件包装信号器代码。喜欢:

    $(function () {
        $.connection.hub.start().done(function () {
            $.connection.myHub.server.broadCastServerTime();
        });

        $.connection.myHub.client.MessageReceiver = function (message) {
            $('#serverTime').text(message);
        }
    });

这样,您的代码仅在加载JQuery和SignalR集线器时执行。当前,您的Signalr代码不等待jquery或signalr集线器加载。

还要确保您的MyHub代码正在将日期时间发送到MessageReceiver。

public class MyHub : Hub
{
    public void BroadCastServerTime()
    {
        Clients.All.MessageReceiver(DateTime.Now.ToString());
    }
}