/// <summary> /// Metoda dokonywująca głębokiej kopii bazy /// </summary> /// <returns>Bazę danych po dokonaniu kopii</returns> public BazaFilmow DeepCopy() { BazaFilmow fklon = (BazaFilmow)Clone(); fklon.Baza = new List <Film>(Baza); return(fklon); }
private void MenuOtworz_Click(object sender, RoutedEventArgs e) { Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog(); Nullable <bool> result = dlg.ShowDialog(); if (result == true) { string filename = dlg.FileName; filmy = BazaFilmow.OdczytajXML(filename); lista = new ObservableCollection <Film>(filmy.Baza); listBox_baza.ItemsSource = lista; } }
/// <summary> /// Metoda do odczytywania bazy z pliku /// </summary> /// <param name="plik">Scieżka do odczytu pliku</param> /// <returns>Odczytana baza filmów</returns> public static BazaFilmow OdczytajXML(string plik) { StreamReader sr = new StreamReader(plik); XmlSerializer xs = new XmlSerializer(typeof(BazaFilmow)); BazaFilmow b = (BazaFilmow)xs.Deserialize(sr); sr.Close(); if (b != null) { return(b); } else { return(null); } }