我有以下代码:
public void JoinGroup(string groupName, string userFullName)
{
Groups.Add(Context.ConnectionId, groupName);
// Send data back to everyone including the caller
Clients.Group(groupName).dataChanged(...);
}
我希望Clients.Group(groupName)
能够回复刚刚加入该群组的客户,但事实并非如此。但是Clients.Caller...
会正确调用刚加入该组的客户端。
问题
为什么不是Clients.Group(groupName)
包括刚加入群组的来电者?
答案 0 :(得分:3)
Groups.Add
是异步的,因此如果要以相同的方法(as stated in the documentation)使用该组,则需要等待它:
public async Task JoinGroup(string groupName, string userFullName)
{
await Groups.Add(Context.ConnectionId, groupName);
// Send data back to everyone including the caller
Clients.Group(groupName).dataChanged(...);
}