public static void MakeBackup() { BackupData backupData = new BackupData(exploitations, fumiers, chauffeurs, bonLivraisons, settings); SaveFileDialog sfd = new SaveFileDialog(); sfd.Title = "Sauvegarde des données sécurisées"; sfd.Filter = "Données de sauvegarde|*.mbackup"; sfd.OverwritePrompt = true; sfd.ValidateNames = true; sfd.ShowDialog(); if (sfd.FileName == "") { MessageBox.Show("Merci de saisir un nom de fichier ! Sauvegarde annulée."); return; } using (FileStream fs = (FileStream)sfd.OpenFile()) { BinaryFormatter bf = new BinaryFormatter(); try { bf.Serialize(fs, backupData); fs.Flush(); } catch (Exception e) { MessageBox.Show("Une erreur est survenue lors de la sauvegarde des données en mode sécurisé. \n" + e.Message, "Erreur", MessageBoxButton.OK, MessageBoxImage.Error); } } }
public static void LoadBackup() { BackupData backupData = null; OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "Chargement des données sécurisées"; ofd.Filter = "Données de sauvegarde|*.mbackup"; ofd.CheckFileExists = true; ofd.CheckPathExists = true; ofd.Multiselect = false; ofd.ShowDialog(); if (ofd.FileName == "") { MessageBox.Show("Merci de saisir un nom de fichier ! Sauvegarde annulée."); return; } using (FileStream fs = (FileStream)ofd.OpenFile()) { BinaryFormatter bf = new BinaryFormatter(); try { backupData = bf.Deserialize(fs) as BackupData; fs.Flush(); } catch (Exception e) { MessageBox.Show("Une erreur est survenue lors du chargement des données en mode sécurisé. \n" + e.Message, "Erreur", MessageBoxButton.OK, MessageBoxImage.Error); } } exploitations = backupData.Exploitations ?? new ObservableCollection <Exploitation>(); fumiers = backupData.Fumiers ?? new ObservableCollection <Fumier>(); chauffeurs = backupData.Chauffeurs ?? new ObservableCollection <Chauffeur>(); bonLivraisons = backupData.BonLivraisons ?? new ObservableCollection <BonLivraison>(); settings = backupData.Settings ?? new Settings(); }