SignalR拒绝工作

Global.asax中:

void Application_Start(object sender, EventArgs e) { RouteTable.Routes.MapConnection("echo", "echo/{*operation}"); } 

myconnection.cs

  public class myconnection : PersistentConnection { protected override Task OnReceivedAsync(string clientId, string data) { // Broadcast data to all clients return Connection.Broadcast(data); } } 

〜/页/ Messages.aspx

    $(function () { var connection = $.connection('echo'); connection.received(function (data) { $('#messages').append('
  • ' + data + '
  • '); }); connection.start(); $("#broadcast").click(function () { connection.send($('#msg').val()); }); });

    错误:

    SignalR:必须先启动连接,然后才能发送数据。 在.send()之前调用.start()

    到目前为止我尝试了什么:

           <script type="text/javascript" src=''> 

    这两个解决方案(https://github.com/SignalR/SignalR/wiki/Faq)都没有解决我的问题。 有任何想法吗)? 谢谢。

    确保正确配置echo脚本的URL:

     var connection = $.connection('<%= ResolveClientUrl("~/echo") %>'); 

    因为你在~/Pages文件夹里面使用echo是不正确的,因为如果应用程序托管在虚拟目录中,你的路由需要/echo/appname/echo