Exemplo n.º 1
0
        public static void RemoveConnection(HubCallerContext context)
        {
            var connectionId   = context.ConnectionId;
            var userIdentifier = context.UserIdentifier;

            if (userIdentifier != null)
            {
                if (UserConnections.TryGetValue(userIdentifier, out var connectionList))
                {
                    connectionList.RemoveAll(x => x.ConnectionId == connectionId);
                    if (!connectionList.Any())
                    {
                        UserConnections.TryRemove(userIdentifier, out _);
                    }
                }
            }
            else
            {
                VisitorConnections.TryRemove(connectionId);
            }
        }