signalR无法找到集线器方法

时间:2017-04-10 19:51:56

标签: c# .net websocket signalr

我正在尝试编写一个简单的signalR网络应用。 我有一个ChatHub

public class ChatHub : Hub
{
    public void BroadcastMessage(string message)
    {
        Clients.All.writeMessage(message);
    }
}

我有js

<script src="~/signalr/hubs"></script>
<script>
    $(function () {
        var chat = $.connection.chatHub;
        chat.writeMessage = function (msg) {
            $('#mainContainer').append("<h2>" + msg + "</h2>");
        }

        $.connection.hub.start();

        var valll = 0;
        var interval = setInterval(
            function () {
                chat.broadcastMessage(valll);
                valll++;
                if (valll > 10)
                    clearInterval(interval);
            },
            500
        )
    }
    );
</script>

聊天未被识别,但我收到了错误:

  

未捕获的TypeError:chat.broadcastMessage不是函数

如何查找包含错误的部分代码?

2 个答案:

答案 0 :(得分:1)

试试这个

chat.server.broadcastMessage(valll);

答案 1 :(得分:0)

您是否已将其加载到页面或标题中?

<script src="@Url.Content("~/Scripts/jquery.signalR-2.2.1.min.js")"></script>