【发布时间】:2012-08-03 07:25:39
【问题描述】:
我有一个 MVC 4 应用程序,它有一个注册页面。
hub的代码如下:-
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SignalR.Hubs;
[HubName("messageHub")]
public class MessageHub : Hub
{
/// <summary>
/// Broadcast the message to all clients
/// </summary>
/// <param name="message">message to be broadcasted</param>
public void Broadcast(string message, string messagetype, string messagetitle)
{
this.Clients.showMessage(message, messagetype, messagetitle);
}
public void Getsubscription()
{
}
}
同样,JS hub代码是:-
<script type="text/javascript" src="@Url.Content("~/Scripts/json2.js")"></script>
<script src= "@Url.Content("~/Scripts/jquery.signalR-0.5.2.js")" type="text/javascript"></script>
<script src="@Url.Content("~/signalr/hubs")" type="text/javascript"></script>
<h2>Index</h2>
<script type="text/javascript">
$(document).ready(function () {
//Initialize hub
var hub = $.connection.messageHub;
// hub.start();
$.connection.hub.start();
//Append event to Button
//hub.broadcast("c","b","a");
});
</script>
现在,运行后得到 $.connection.messageHub as undefined
其次,我的 chrome 网络显示;-
第三,当单击信号器/集线器的启动器时,我得到未实现错误:-
我尝试更改脚本的 URL,也作为 IIS 运行,但无法使其正常工作。 如果我将我的脚本保存在 .cshtml(视图)中并更改-> 使用本地 IIS Webserver,它的工作正常 任何帮助。!
【问题讨论】:
-
我假设你也包括了基本的 jQuery 库?还有,是否定义了 $.connection?
-
如果您在浏览器中手动导航到该网址,它会显示什么?
-
@AndersHolmström 我已在我的第一个屏幕截图中粘贴了连接响应。只是想更新一下,如果我将脚本保存在 .cshtml(视图)中并更改使用本地 IIS Webserver,它的工作正常!
标签: asp.net-mvc-4 signalr signalr-hub