private async Task <Group> AddToGroup(string groupName) { var group = await messageRepository.GetMessageGroup(groupName); if (group == null) { group = new Group(groupName); messageRepository.AddGroup(group); } var connection = new Connection(Context.ConnectionId, Context.User.GetUsername()); group.Connections.Add(connection); if (await messageRepository.SaveAllAsync()) { return(group); } throw new HubException("Failed to join group"); }