public bool SaveOrUpdateChatHeader(ChatHeader record, DbActionFlag flag) { try { if (DbActionFlag.Create == flag) { _context.ChatHeader.Add(record); } else if (DbActionFlag.Update == flag) { _context.Entry(record).State = System.Data.Entity.EntityState.Modified; } else if (DbActionFlag.Delete == flag) { _context.ChatHeader.Remove(record); } _context.SaveChanges(); return(true); } catch (Exception ex) { return(false); } }
public object Deserialize( StreamReader streamReader, SerializationContext serializationContext, PropertyMetaData propertyMetaData = null) { var header = new ChatHeader(); header.PacketType = (ChatMessageType)streamReader.ReadInt16(); header.Size = streamReader.ReadInt16(); return(header); }
private async void ActivateFromURI(ProtocolActivatedEventArgs args) { // Parse the URI to extract the protocol and the contact ids Uri uri = args.Uri; string real = Uri.UnescapeDataString(uri.Query); var userID = real.Replace("?ContactRemoteIds=", ""); if (uri.Scheme == "ms-ipmessaging") { Frame rootFrame = Window.Current.Content as Frame; // Ne répétez pas l'initialisation de l'application lorsque la fenêtre comporte déjà du contenu, // assurez-vous juste que la fenêtre est active if (rootFrame == null) { rootFrame = InitFrameLoginAndUserAgentAndBack(args); } // Quand la pile de navigation n'est pas restaurée, accédez à la première page, // puis configurez la nouvelle page en transmettant les informations requises en tant que // paramètre if (!DataSource.IsLogedIn) { rootFrame.Navigate(typeof(MainPage)); } else { var name = await DataSource.GetNameFromRemotId(userID); var header = new ChatHeader() { Href = userID, Name = name, UnreadCount = 2 }; rootFrame.Navigate(typeof(ChatPage), new ChatViewModel(header)); } // Vérifiez que la fenêtre actuelle est active Window.Current.Activate(); } }
async void ActivateForContactPanel(ContactPanelActivatedEventArgs e) { string remoteId = await DataSource.GetRemoteIdForContactIdAsync(e.Contact); if (string.IsNullOrEmpty(remoteId)) { return; } { Frame rootFrame = Window.Current.Content as Frame; // Ne répétez pas l'initialisation de l'application lorsque la fenêtre comporte déjà du contenu, // assurez-vous juste que la fenêtre est active if (rootFrame == null) { rootFrame = InitFrameLoginAndUserAgentAndBack(e); } if (!DataSource.IsLogedIn) { rootFrame.Navigate(typeof(MainPage)); } else { var header = new ChatHeader() { Href = remoteId, Name = e.Contact.Name, UnreadCount = 2 }; rootFrame.Navigate(typeof(ChatPage), new ChatViewModel(header)); } // Ensure the current window is active Window.Current.Activate(); } }