如何进行多平台部署Client和Server详细讲解

一:signalR把console用做客户端访问服务端方法

1:新建一个控制台应用程序(ClientConsole)

2:用nuget安装SignalR.Client(必须,下面是nuget命令)

Install-Package Microsoft.AspNet.SignalR.Client

3:给Program的Main如下写就和在JS里面向服务器请求差不多(注意引用Microsoft.AspNet.SignalR.Client命名空间)

 如何进行多平台部署Client和Server详细讲解

 class Program
    {
        static void Main(string[] args)
        {
            var conn = new HubConnection("http://localhost:50278/signalr");
            var proxy=  conn.CreateHubProxy("PersonHub");
            proxy.On("Welcome", (msg) =>
            {
                Console.WriteLine(msg);
            });
            conn.Start().Wait();
            var info= proxy.Invoke<string>("Hello", 100).Result;
        }
    }

4:搭建一个服务端(用之前的代码)

  4.1新建signal集线器类=》PersonHub,类的方法如下所示

 如何进行多平台部署Client和Server详细讲解

 4.2新建一个Startup=》Startup1类如下

 如何进行多平台部署Client和Server详细讲解

5:把服务器启动起来

如何进行多平台部署Client和Server详细讲解

6:运行结果

如何进行多平台部署Client和Server详细讲解

7:signalR console做为客户端访问服务器至此完成

二:signalR把console用做服务端被客户端访问

1:新建一个控制台程序=》ServerConsole

2:打开nuge控制台执行如下命令安装相关DLL

2.1:Install-Package Microsoft.Owin.Host.HttpListener

2.2:install-package Microsoft.AspNet.SignalR.Core

2.3:Install-Package Microsoft.Owin.Hosting

2.4:install-package Microsoft.Owin.Cors

3:console里面不能建signalr集线器类,所以需要在其他地方copy一个过来,里面的方法如下

如何进行多平台部署Client和Server详细讲解

4:新建一个Startup类=>Startup1里面的方法如下

如何进行多平台部署Client和Server详细讲解

5:在Program里面的方法如下

如何进行多平台部署Client和Server详细讲解

6:新建一个页面,用做客户端,注意页面要引用(<script src="~/Scripts/jquery-1.10.2.min.js"></script> 和<script src="~/Scripts/jquery.signalR-2.1.2.min.js"></script>)

如何进行多平台部署Client和Server详细讲解

7:把ServerConsole 启动起来

8:把客户端启动起来,运行效果如下

如何进行多平台部署Client和Server详细讲解

9:做起来很简单,主要是要把dll引用对,并把相关的请求的url配对就可以了,