private void SerializeSectionRecursive(ref XmlWriter writer, DynamicXmlNode node)
        {
            writer.WriteStartElement(node.Name);

            foreach (var attribute in node.Attributes)
            {
                writer.WriteAttributeString(attribute.Name.LocalName, attribute.Value);
            }

            foreach (var element in node.Elements)
            {
                SerializeSectionRecursive(ref writer, element);
            }

            writer.WriteEndElement();
        }
 protected override void DeserializeElement(XmlReader reader, bool serializeCollectionKey)
 {
     Node = DynamicXmlNode.Parse(reader);
 }