I have a class that is inherited from List<T>
and also has some properties, like this:
[Serializable]
public class DropList : List<DropItem>
{
[XmlAttribute]
public int FinalDropCount{get; set;}
}
This class is serialized to xml as part of a larger class:
[Serializable]
public class Location
{
public DropList DropList{get; set;}
....
}
The problem is, serializer sees my list as a collection; the resulting XML contians only list elements, but not class properties (FinalDropCount in this case). This is an example of outputted XML:
<Location xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<DropList>
<DropItem ProtoId="3" Count="0" Minimum="0" Maximum="0" />
<DropItem ProtoId="4" Count="0" Minimum="0" Maximum="0" />
</DropList>
....
</Location>
Is there some way to save both list contents and properties without resorting to implementing IXmlSerializable
by hand?