全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

SignalR Self Host+MVC等多端消息推送服务(二)

一、概述

上次的文章中我们简单的实现了SignalR自托管的服务端,今天我们来实现控制台程序调用SignalR服务端来实现推送信息,由于之前我们是打算做审批消息推送,所以我们的demo方向是做指定人发送信息,至于做聊天消息和全局广播,这里就不在进行演示了。

二、创建控制台客户端

1、在SignalRProject解决方案下新建一个名为Clinet的控制台

2、在程序包管理控制台中输入以下命令

Install-Package Microsoft.AspNet.SignalR.Client

3、修改Clinet项目中的Program.cs代码

using Microsoft.AspNet.SignalR.Client;
using System;

namespace Clinet
{
  class Program
  {
    static void Main(string[] args)
    {
      Console.Write("请输入用户名: ");
      string clientName = Console.ReadLine();


      var url = "http://localhost:10086/";
      var connection = new HubConnection(url);
      var chatHub = connection.CreateHubProxy("IMHub");
      
      connection.Start().ContinueWith(t =>
      {
        if (!t.IsFaulted)
        {
          //连接成功,调用Register方法
          chatHub.Invoke("Register", clientName);
        }
      });

      //客户端接收实现,可以用js,也可以用后端接收
      var broadcastHandler = chatHub.On<string, string>("receivePrivateMessage", (name, message) =>
      {
        Console.WriteLine("[{0}]{1}: {2}", DateTime.Now.ToString("HH:mm:ss"), name, message);
      });

      Console.WriteLine("请输入接收者名:");
      var _name = Console.ReadLine();
      Console.WriteLine("请输入发送信息!");
      while (true)
      {
        var _message = Console.ReadLine();
        chatHub.Invoke("SendPrivateMessage", _name, _message).ContinueWith(t =>
        {
          if (t.IsFaulted)
          {
            Console.WriteLine("连接失败!");
          }
        });
        Console.WriteLine("请输入接收者名:");
        _name = Console.ReadLine();
        Console.WriteLine("请输入发送信息!");
      }
    }
  }
}

4、右键单击解决方案——>选择属性——>启动项目——>多启动项目——>将Clinet和Server设置为启动,如下:

5、F5运行后,再开一个Clinet,在第一个Client中输入用户名为a,登录后Server中显示出登录a的ID,在另一个Clinet中输入用户名为b,登录后Server中显示出登录b的ID,然后根据提示信息,a Clinet中输入接收信息的人为b,输入hello后按Enter后,b Client显示出了a输入的信息,如下图:

自此控制台调用SignalR服务端,实现消息推送的Demo就完成了,今天先写到这,下一章我们实现B/S端调用SignalR服务来推送消息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# SignalR  # Self  # Host  # MVC  # 消息推送  # 基于SignalR的消息推送与二维码扫描登录实现代码  # Asp.NET MVC中使用SignalR实现推送功能  # 使用SignalR推送服务在Android的实现 SignalA  # asp.net mvc实现简单的实时消息推送  # ASP.NET实现推送文件到浏览器的方法  # .net平台推送ios消息的实现方法  # .net 通过URL推送POST数据具体实现  # SignalR Self Host+MVC等多端消息推送服务(一)  # SignalR Self Host+MVC等多端消息推送服务(三)  # 请输入  # 服务端  # 可以用  # 输入用户名  # 来实现  # 客户端  # 出了  # 第一个  # 右键  # 提示信息  # 写到  # 设置为  # 一章  # 单击  # 大家多多  # 如下图  # 人发  # 新建一个  # 再开  # 后端 


相关文章: 建站主机如何选?性能与价格怎样平衡?  公司门户网站制作流程,华为官网怎么做?  建站之星伪静态规则如何正确配置?  昆明高端网站制作公司,昆明公租房申请网上登录入口?  如何在万网自助建站平台快速创建网站?  如何基于云服务器快速搭建个人网站?  济南企业网站制作公司,济南社保单位网上缴费步骤?  长沙做网站要多少钱,长沙国安网络怎么样?  如何通过FTP服务器快速搭建网站?  如何快速搭建个人网站并优化SEO?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  网站制作软件有哪些,制图软件有哪些?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  大连 网站制作,大连天途有线官网?  建站主机系统SEO优化与智能配置核心关键词操作指南  制作旅游网站html,怎样注册旅游网站?  如何通过智能用户系统一键生成高效建站方案?  重庆市网站制作公司,重庆招聘网站哪个好?  Bpmn 2.0的XML文件怎么画流程图  高防服务器租用如何选择配置与防御等级?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  建站之星ASP如何实现CMS高效搭建与安全管理?  网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?  如何在VPS电脑上快速搭建网站?  广州美橙建站如何快速搭建多端合一网站?  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?  如何在腾讯云服务器快速搭建个人网站?  孙琪峥织梦建站教程如何优化数据库安全?  如何选择高效可靠的多用户建站源码资源?  C#怎么创建控制台应用 C# Console App项目创建方法  网站制作网站,深圳做网站哪家比较好?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  简历在线制作网站免费版,如何创建个人简历?  成都网站制作报价公司,成都工业用气开户费用?  建站主机如何选?高性价比方案全解析  小型网站制作HTML,*游戏网站怎么搭建?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  如何在建站之星绑定自定义域名?  如何快速登录WAP自助建站平台?  建站之星2.7模板快速切换与批量管理功能操作指南  如何选择网络建站服务器?高效建站必看指南  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  宝塔建站无法访问?如何排查配置与端口问题?  公众号网站制作网页,微信公众号怎么制作? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。