在组方法中注册到组的SIgnalR失败

问题描述 投票:1回答:1

我正在signalr的集线器(具有接口IConnected)中使用这部分代码。问题是当我在Group.Add方法中调用Connect时,客户端确实不在组中,并且我无法向他发送消息以抛出该组。稍后当我从客户端调用某个方法注册组时,一切正常。我不了解的是,两种方法(在Connect()中甚至在registerClientToGroup()中)都具有相同的Groups.Add方法。

public System.Threading.Tasks.Task Connect()
{
  Groups.Add(this.Context.ConnectionId, "group");
  return null;
}

一些想法?非常感谢。

signalr signalr-hub
1个回答
2
投票

我不确定这是否是导致问题的直接原因,但令您惊讶的是,您没有从Task中返回Connect的空值,因此我很惊讶。您可能会收到错误,只是不调试/捕获它们。

如果您在Connect中没有任何其他工作要做,需要您自己的Task,则只需将Task从调用返回到Groups.Add,就像这样:

public Task Connect()
{
    return Groups.Add(this.Context.ConnectionId, "group");
}
© www.soinside.com 2019 - 2024. All rights reserved.