【发布时间】:2012-06-24 17:31:22
【问题描述】:
我在 MVC4 应用程序中使用 Visual Studio 2012 Ultimate RC、SignalR 0.5.1 和 Jquery 1.7.2。
我看过:MVC4 SignalR "signalr/hubs" 501 Not Implemented Error
但这不影响我的问题(我使用 IIS Express 进行调试)。
当我尝试使用 SignalR 时,$.connection 变量未定义。我的服务器端代码:
[HubName("tenantHub")]
public class TenantHub : Hub
{
...
void TenantChange(CrudAction action, Tenant tenant)
{
Clients.eventOccurred(action.ToString(), tenant);
}
}
客户端:
$(function() { var test = $.connection.tenantHub; });
客户端 SignalR/hubs 被引用,我可以看到 JS 代码,它不会抛出任何错误。但是引用 $.connection 会抛出 Uncaught TypeError: Cannot read property 'tenantHub' of undefined。还尝试做默认的聊天示例,它给出了同样的错误。 SignalR 在 VS2012 中使用时是否不受支持,还是我只是愚蠢?
【问题讨论】:
-
你试过在服务器上调试吗?有什么例外吗?你开始连接了吗?
$.connection.hub.start();这就是我现在能想到的:( -
是的,我试过了,但是'connection'变量本身是未定义的。
-
我觉得问题出在.js文件的位置,你输入
jquery.signalR-0.5.1.min.js和signalr/hubs了吗?也许你应该尝试使用firebug来调试它 -
jquery.signalR-0.5.1.min.js和signalr/hubs被引用,没有抛出任何错误。
标签: signalr visual-studio-2012 .net-4.5