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(); }
private bool Conectado() { return(clients.Any(x => ((MicrosoftWebSockets)x).Id == Id)); }