C# 信令客户端到MVC5

C# 信令客户端到MVC5,c#,client-server,signalr,asp.net-mvc-5,signalr-hub,C#,Client Server,Signalr,Asp.net Mvc 5,Signalr Hub,我试图通过一个单独的、微型的客户端应用程序来访问我的MVC5信号集线器,但没有成功 一些背景: 我有一个使用SingalR 1.10的常规ASP.NET应用程序,我可以用我的客户端访问它。代码: ASP.NET中心: namespace SignalrTest { public class ScanHub : Hub { public void SendScan(string data, string xmlData) {

我试图通过一个单独的、微型的客户端应用程序来访问我的MVC5信号集线器,但没有成功

一些背景:

我有一个使用SingalR 1.10的常规ASP.NET应用程序,我可以用我的客户端访问它。代码:

ASP.NET中心:

namespace SignalrTest
{
    public class ScanHub : Hub
    {
        public void SendScan(string data, string xmlData)
        {
            Clients.All.broadcastMessage(data, xmlData);
        }
    }
}
客户:

 connection = new HubConnection("http://localhost:2446/");
 hubProxy = connection.CreateHubProxy("ScanHub");
 connection.Start();

 ........

 private static async Task RunAsync()
 {
     object[] param = new object[2];
     param[0] = _Data;
     param[1] = _xmlData;
     await hubProxy.Invoke("SendScan", param);
 }
再说一次,这很有效。我的MVC Hub与另一个相同(我已确保更改客户端Hub连接地址),我的Startup.cs如下:

[assembly: OwinStartupAttribute(typeof(SignalrTest.Startup))]
namespace SignalrTest
{
    public partial class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            app.MapSignalR();
        }
    }
}
在运行我的客户机时,它不会出错,但我没有得到任何响应,也没有任何迹象表明MVC端发生了任何事情


有人能看出我在MVC应用程序方面出了什么问题吗?我不清楚是否需要改变路线。我很乐意发布任何其他有助于解决我的问题的代码。提前谢谢。

尝试将.NET客户端上的连接转换为类似的异步方法,并快速测试连接是否良好

 private async void Connect()
 {
   connection = new HubConnection("http://localhost:2446/");
   hubProxy = connection.CreateHubProxy("ScanHub");
   await connection.Start();
   //If using WPF you can test like so if not use whatever output method you prefer to see if it connects
   if (Connection.State == Microsoft.AspNet.SignalR.Client.ConnectionState.Connected)
   {
            MessageBox.Show("Connected!");
   }
   else
   {
            MessageBox.Show("Fail!");
   }
 }

你真的在使用信号器1.1吗?Signalr1.1在启动类中不使用OWIN,MapSignalR方法甚至不应该编译