Dzień dobry!
Mam taki problem, chodzi o serializację. Klasa Baza_autorów, zawiera listę autorów i funkcję zapisu do pliku xml.
public class Baza_autorow
{
public List<Autor> autorzy = new List<Autor>();
public Baza_autorow() { }
//metody
public void zapis_autorow()
{
StreamWriter wr = new StreamWriter("autorzy.xml");
XmlSerializer serializer = new XmlSerializer(typeof(List<Autor>));
serializer.Serialize(wr, autorzy);
wr.Close();
}
}
W klasie Autor mam listę umów każdego autora
public class Autor
{
public string imie;
public string nazwisko;
public List<Umowa> umowy = new List<Umowa>();
public Autor() { }
public Autor(string im, string na)
{
imie = im;
nazwisko = na;
}
//metody
}
Umowa_o_dzielo dziedziczy z klasy umowa
public class Umowa
{
public string data_zawarcia;
public string tytul;
public double wynagrodznie;
public Umowa() { }
public Umowa(string d, string t, double w)
{
data_zawarcia = d;
tytul = t;
wynagrodznie = w;
}
}
public class Umowa_o_dzielo : Umowa
{
public Umowa_o_dzielo() { }
public Umowa_o_dzielo(string d, string o, double w) : base(d, o, w) { }
}
Problem powstaje przy serializacji jeśli istnieje obiekt klasy Umowa_o_dzlielo "An unhandled exception of type 'System.InvalidOperationException' occurred in System.Xml.dll Additional information: Wystąpił błąd podczas generowania dokumentu XML."
Co mam napisać w metodzie zapis_autorow żeby działało, a może trzeba dodać jakieś atrybuty do klasy Umowa_o_dzielo?
Szukam cały dzień rozwiązania i ciągle nic :(
Z góry dziękuję za pomoc :)