public override void SerializeToXml(XmlWriter xw) { DataContractSerializer ser = new DataContractSerializer(this.GetType()); using (var ms = new MemoryStream()) { ser.WriteStartObject(xw, this); ser.WriteObjectContent(xw, this); arrays.SerializeToXml(xw); ser.WriteEndObject(xw); } }