public override void OnClose()
        {
            try
            {
                DashBoardModel dbModel = new DashBoardModel();
                dbModel.UpdateLastModified(this.fileId, String.Format("{0:s}", DateTime.Now));
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }

            if (clients.Any(a => a == this))
            {
                clients.Remove(this);
                TranslateMessage translateMessage = new TranslateMessage();
                translateMessage.ClientId = this.clientId;
                translateMessage.SendTime = DateTime.Now;
                translateMessage.UserId   = this.userId;
                translateMessage.UserName = this.userName;
                translateMessage.Color    = this.userColor.Name;
                translateMessage.IsClose  = true;
                foreach (var client in clients)
                {
                    if (((APVTranslator_Web.Socket.wsHandler)client).projectId == this.projectId && ((APVTranslator_Web.Socket.wsHandler)client).fileId == this.fileId)
                    {
                        string msgBack = JsonConvert.SerializeObject(translateMessage);
                        client.Send(msgBack);
                    }
                }
            }
            base.OnClose();
        }
Beispiel #2
0
 private bool Conectado()
 {
     return(clients.Any(x => ((MicrosoftWebSockets)x).Id == Id));
 }