我的集线器中的 OnConnected 和 OnDisconnected 覆盖无法触发时遇到问题。
出于复制目的,我有一个非常简单的集线器:
public class OnlineHub : Hub
{
public void TestMethod()
{
var a = 1;
}
public override System.Threading.Tasks.Task OnConnected()
{
return Clients.All.connected(Context.ConnectionId, DateTime.Now.ToString());
}
public override System.Threading.Tasks.Task OnDisconnected()
{
return Clients.All.disconnected(Context.ConnectionId, DateTime.Now.ToString());
}
}
还有一个aspx页面:
<script type="text/javascript">
$(function () {
$("#btn").click(function () {
$.connection.onlineHub.server.testMethod();
});
$.connection.onlineHub.server.connected = function (id, date) {
$("#results").append("connected: " + id + " : " + date + "</br>");
};
$.connection.onlineHub.server.disconnected = function (id, date) {
$("#results").append(("connected: " + id + " : " + date + "</br>");
};
$.connection.onlineHub.connection.start();
});
</script>
我正在使用 jQuery 1.6.4 和 signalR 1.0.0-alpha2。未执行客户端连接和断开连接的方法。如果我在 OnConnected 或 OnDisconnected 中设置断点,断点不会命中。
正在建立连接,因为我的 TestMethod 调用正常,并且我从 signalR 的协商调用中得到了一个 connectionId。
我确定我错过了一些简单的东西。
提前致谢。