升级到SignalR 1-alpha2后无法调试我的Hub方法

时间:2012-11-22 12:16:19

标签: asp.net-mvc signalr

我刚升级到SignalR 1.0.0-Alpha2。在我这样做之后,我无法调试我的集线器方法。 它永远不会到达断点。

这是代码

参考:

  <script src="../../Scripts/jquery.signalR-1.0.0-alpha2.min.js" type="text/javascript"></script>
<script src="<%:Url.Content("~/signalr/hubs")%>" type="text/javascript"></script>

客户端:

$(document).ready(function () {
    con = $.connection.messagingHub;


    $.connection.hub.start(function () {
        var myClientId = $.connection.hub.id;

        con.connectToHub('<%:ViewBag.rid%>', myClientId); // Breakpoint never reaches to this method on the hub.

        con.getWaitingOrdersCount('<%:ViewBag.rid%>').done(function (data) {
            console.log(data);
        });
    });

中心代码:

public void ConnectToHub(Int32 rId, string connectionId)
    {
        var res = new HubConnection();
        res.ConnectionId = connectionId;
        res.RestaurantId = rId;

        dc.HubConnection.AddObject(res);
        dc.SaveChanges();
    }
可能出了什么问题?任何帮助??

编辑:

萤火虫说:

TypeError: con is undefined 

con.connectToHub('36', myClientId);

1 个答案:

答案 0 :(得分:1)

您必须至少具有1个客户端功能(启动前)才能与集线器通信。 AKA con.client.foo = function ....

其次确保您的集线器名称是以下之一:

public class messagingHub

public class MessagingHub

HubName("messagingHub")
public class foo

第三,在服务器端调用函数时,必须使用.server方法。 AKA

con.server.connectToHub(...my arguments...);