zoukankan      html  css  js  c++  java
  • SignalR的客户端.NET Client介绍

    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键,两边同时更新点赞数。

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

  • 相关阅读:
    拖拽更改窗口大小
    一个窗口移动时,另一个窗口跟随移动
    xcode使用技巧
    同一个解决方案中,多个项目间相互引用,无法打开源文件
    截图时窗口自动识别
    C++使用sqlite时,中文字符显示乱码问题
    sqlite3配置与使用
    duilib控件与属性说明
    xml文件编写
    线程及安全相关
  • 原文地址:https://www.cnblogs.com/everylittlebit/p/5360450.html
Copyright © 2011-2022 走看看