这是我的密码
public interface IJobClient
{
Task DisplayMessage(string message);
}
public class JobHub : Hub<IJobClient>
{
public const string GROUP_NAME = "JobGroup";
private readonly ILogger<JobHub> logger;
public JobHub(ILogger<JobHub> logger)
{
this.logger = logger;
}
public override async Task OnConnectedAsync()
{
await Groups.AddToGroupAsync(Context.ConnectionId, GROUP_NAME);
try
{
await Clients.Group(GROUP_NAME).DisplayMessage($"{Context.ConnectionId} has joined the group {GROUP_NAME}.");
}
catch (Exception e)
{
logger.LogError("OnConnectedAsync raised exception {0} with message {1} at {2}", e.GetType(), e.Message, e.StackTrace);
}
await base.OnConnectedAsync();
}
public override async Task OnDisconnectedAsync(Exception exception)
{
await Groups.RemoveFromGroupAsync(Context.ConnectionId, GROUP_NAME);
await base.OnDisconnectedAsync(exception);
}
public async Task SendGroupMessage(string message)
{
try
{
await Clients.Group(GROUP_NAME).DisplayMessage(message);
}
catch (Exception e)
{
logger.LogError("SendGroupMessage raised exception {0} with message {1} at {2}", e.GetType(), e.Message, e.StackTrace);
}
}
}
客户端连接正常。它会影响群体。AddToGroupAsync()这很好,在下一行,它试图向刚刚添加连接的组发送消息,结果出现了一个空异常。
有人能帮忙吗?