向多个组的成员发送单个 SignalR 消息

Dav*_*eer 5 c# signalr

当运行以下 SignalR 代码时,属于多个合格组的成员将收到多条消息:

public class ChatHub : Hub
{
    public void Send(string name, string message, params string[] groups)
    {
        this.Clients.Groups(groups).broadcast(name, message);
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法向属于任何组成员的用户发送一条消息?换句话说,如果groups上面的参数定义为["grpA","grpB"],我希望发生以下情况:

  • 用户 1,grpA 成员:1 条消息
  • 用户2,grpB成员:1条消息
  • 用户 3,grpA 和 grpB 成员:1 条消息
  • 用户 4,grpA 和 grpC 成员:1 条消息
  • 用户 5,grpC 成员:0 条消息

MaK*_*MKo 3

除了创建自己的方式来在广播之前/广播时跟踪每个组中的用户以及自己的不同用户之外,没有其他方法可以做到这一点。

也许,这个 API 会在未来的版本中引入,但目前还没有办法做到这一点。