Cet article présente principalement en détail la deuxième partie des services de transmission de messages multiterminaux tels que SignalR Self Host+MVC. Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer
1. Présentation
Dans le dernier article, nous avons simplement implémenté le serveur auto-hébergé SignalR. Aujourd'hui, nous allons implémenter le programme console pour appeler le serveur SignalR pour transmettre des informations. Parce qu'avant, nous prévoyons de transmettre des messages d'approbation. , notre direction de démonstration est donc d'envoyer des messages à des personnes désignées. Quant aux messages de chat et aux diffusions mondiales, nous ne les démontrerons pas ici.
2. Créez un client console
1. Créez une nouvelle console nommée Clinet sous la solution SignalRProject
2. Entrez la commande suivante dans la console de gestion des packages
Install-Package Microsoft.AspNet.SignalR.Client
3. Modifier le code Program.cs du projet Clinet<. 🎜>
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("请输入发送信息!"); } } } }
Propriétés ——>Projet de démarrage——>Plusieurs projets de démarrage——>Définissez Clinet et le serveur au démarrage, comme suit :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!