运行以下 SignalR 代码时,属于多个合格组的成员将收到多条消息:
public class ChatHub : Hub
{
public void Send(string name, string message, params string[] groups)
{
this.Clients.Groups(groups).broadcast(name, message);
}
}
有什么方法可以向属于任何组成员的用户发送单个 消息?换句话说,如果上面的 groups
参数定义为 ["grpA","grpB"]
,我希望发生以下情况:
- 用户 1,grpA 成员:1 条消息
- 用户 2,grpB 成员:1 条消息
- 用户 3,grpA 和 grpB 的成员:1 条消息
- 用户 4,grpA 和 grpC 的成员:1 条消息
- 用户 5,grpC 成员:0 条消息
最佳答案
除了创建您自己的方式来在广播之前/广播中自行跟踪每个组中的用户和不同的用户之外,没有其他方法可以做到这一点。
这个API可能会在未来的版本中引入,但目前还没有办法做到这一点。
关于c# - 向多个组的成员发送单个 SignalR 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36938540/