Der Aufbau:
class Item
{
private int _value;
public Item()
{
_value = 0;
}
public int Value { get { return _value; } set { _value = value; } }
}
class ItemCollection : Collection<Item>
{
private string _name;
public ItemCollection()
{
_name = string.Empty;
}
public string Name { get {return _name;} set {_name = value;} }
}
Nun versuche ich, mit dem folgenden Codefragment zu serialisieren:
ItemCollection items = new ItemCollection();
...
XmlSerializer serializer = new XmlSerializer(typeof(ItemCollection));
using (FileStream f = File.Create(fileName))
serializer.Serialize(f, items);
Wenn ich mir die resultierende XML-Datei ansehe, sehe ich, dass der Wert ItemCollection.Name nicht vorhanden ist!
Ich denke, was passieren kann, ist, dass der Serialisierer den ItemCollection-Typ als eine einfache Sammlung sieht und daher alle anderen hinzugefügten Eigenschaften ignoriert...
Ist jemand auf ein solches Problem gestoßen und hat eine Lösung gefunden?
Herzliche Grüße,
Stécy