首页 > 解决方案 > SignalR.Client:控制台客户端没有像浏览器客户端那样接收事件

问题描述

我有一个带有一种“发送”方法的 asp.net mvc 集线器。此外,我有 2 个客户端:chrome 浏览器和控制台应用程序。

当我从控制台向“MyHub”发送消息到“发送”方法时,一切都按预期工作,“broadcastMessage”事件获取消息(控制台和浏览器)。

当我通过 mvc 服务器向客户端发起

var context = GlobalHost.ConnectionManager.GetHubContext<MyHub>();
context.Clients.All.broadcastMessage(message);

只有浏览器接收到事件“broadcastMessage”但控制台客户端没有收到任何消息。

我做错了什么?

asp.net mvc 集线器:

public class MyHub : Hub
{  
    public void Send(string param)
    { 
        Clients.All.broadcastMessage($" param: {param}"); 
    } 
}

控制台应用程序:

public void OnBroadcastMessage(Action<string> action)
{
    _myHub.On<string>("broadcastMessage", param =>
    {
        ...
    });
} 

标签: c#signalrsignalr-hubsignalr.client

解决方案


推荐阅读