2

我将 SignalR 添加到现有的 ASP.Net 4 Web 窗体应用程序中。创建了一个名为 Hubs 的新文件夹并添加了一个 Hub,如下所示:

[HubName("UpdatesHub")]
public class UpdatesHub : Hub
{
    public void DownloadUpdates()
    {
        // Code Removed
    }
}

添加了 RouteTable.Routes.MapHubs(); 到 Application_Start 并将以下内容添加到页面:

<script src="/Scripts/jquery-1.9.1.js"></script>

<script src="/Scripts/jquery.signalR-1.0.1.js"></script>

<script src="/signalr/hubs"></script>
<script type="text/javascript">
    $(function () {
        // Declare a proxy to reference the hub. 
        var upd = $.connection.UpdatesHub;

        // Code Removed

        // Start the connection.
        $.connection.hub.start().done(function () {
            $('#btnDownload').click(function () {
                upd.server.DownloadUpdates();
            });
        });

    });

</script>

但是每当我单击按钮时,我只会得到“未捕获的类型错误:对象 # 没有方法 'DownloadUpdates'”。我已尝试通过 NuGet 删除和读取信号器,但似乎无法使其正常工作,求助!

4

1 回答 1

3

SignalR camelCases 服务器上的方法名称。尝试检查是否downloadUpdates()存在。

于 2013-04-08T10:58:27.143 回答