everylittlebit

SignalR支持两种客户端:JavaScript Client.NET Client一个简单的SignalR例子中的SignalRDemo(点赞页面)就是JavaScript Client(HTML中的JavaScript脚本)。而.NET Client包括但不限于Windows Console,Windows Form,WPF,Windows Phone等。

这里介绍Windows Console客户端。

一个简单的SignalR例子的代码基础上,添加一个Windows Console。通过NuGet安装Microsoft.AspNet.SignalR.Client。接下来添加代码。

首先创建HubConnection, 参数是点赞页面运行的地址(因为SignalR服务端RateHub由IIS或者IIS Express托管)。接下来创建Hub代理,确保名字和RateHub类的HubName属性值一致。然后添加rateUpdate的相应处理(输出点赞数),rateUpdate事件由服务器端触发。然后启动Hub连接。

接下来的代码:只要按Y键,就触发服务端RateHub的Rate方法(增加点赞数)。

    class Program
    {
        static void Main(string[] args)
        {
            var hubConnection = new HubConnection("http://localhost:58480/");
            IHubProxy stockTickerHubProxy = hubConnection.CreateHubProxy("rateHub");
            stockTickerHubProxy.On<int>("rateUpdate", Update);
            hubConnection.Start();

            Console.WriteLine("Please type \'Y\' key to rate");
            var input = Console.ReadKey().Key;
            while (input == ConsoleKey.Y)
            {
                stockTickerHubProxy.Invoke("Rate");
                input = Console.ReadKey().Key;
            }
        }

        static void Update(int rating)
        {
            Console.WriteLine();
            Console.WriteLine("Good({0})", rating);
        }
    }

程序添加完毕,打开网页http://localhost:58480/rate.html,然后运行Console,在网页上点击按钮或者Console中按下Y键,两边同时更新点赞数。

 

本文如有不妥之处,请见谅!

 

分类:

技术点:

相关文章:

  • 2021-09-17
  • 2021-04-17
  • 2021-06-09
  • 2021-12-03
  • 2021-11-27
  • 2021-04-13
  • 2021-10-02
猜你喜欢
  • 2019-10-05
  • 2021-12-27
  • 2021-10-15
  • 2018-04-12
  • 2021-04-29
  • 2021-06-06
相关资源
相似解决方案