Beispiel #1
0
 private void RefreshList()
 {
     try
     {
         // выгружаем в неё данные из файла
         personList = DeserializePerson.Deserialize("persons.xml");
         // сортируем по дню и месяцу даты рождения
         personList.Collection.Sort((x, y) => x.birthDate.DayOfYear.CompareTo(y.birthDate.DayOfYear));
         // прошедшие помещаем в конец списка
         personList.ReplacePastToEnd();
         MessageBox.Show("Список обновлён.");
     }
     catch (Exception ex)
     {
         MessageBox.Show("Что-то пошло не так!\n\n" + ex.ToString(),
                         "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
Beispiel #2
0
        public static PersonCollection Deserialize(string path)
        {
            PersonCollection personCollection = new PersonCollection();
            XmlSerializer    formatter        = new XmlSerializer(typeof(PersonCollection));

            // десериализация, извлекаем список персон и выводим
            using (FileStream fs = new FileStream(path, FileMode.OpenOrCreate))
            {
                if (new System.IO.FileInfo(path).Length != 0)
                {
                    try
                    {
                        personCollection = (PersonCollection)formatter.Deserialize(fs);
                    }
                    catch (Exception ex)
                    {
                        System.Windows.MessageBox.Show("Что-то пошло не так!\n\n" + ex.ToString(),
                                                       "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
            }
            return(personCollection);
        }
Beispiel #3
0
 public PersonCollection(PersonCollection pc)
 {
     Collection = pc.Collection;
 }