示例#1
0
        public static void Serialize(XmlWriter xWrite, Status status)
        {
            XmlSerializer           Writer = new XmlSerializer(status.GetType());
            XmlSerializerNamespaces ns     = new XmlSerializerNamespaces();

            ns.Add("", "http://www.hybrasyl.com/XML/Status");
            Writer.Serialize(xWrite, status, ns);
        }
示例#2
0
        public static Status Deserialize(XmlReader reader, Status contents = null)
        {
            if (contents == null)
            {
                contents = new Status();
            }
            //reader.Settings.IgnoreWhitespace = false;
            XmlSerializer XmlSerial = new XmlSerializer(contents.GetType());

            //XmlSerial.UnknownAttribute += new XmlAttributeEventHandler(Serializer_Event);
            //XmlSerial.UnknownElement += new XmlElementEventHandler(Serializer_Event);
            //XmlSerial.UnknownNode += new XmlNodeEventHandler(Serializer_Event);
            //XmlSerial.UnreferencedObject += new UnreferencedObjectEventHandler(Serializer_Event);

            if (XmlSerial.CanDeserialize(reader))
            {
                var xContents = XmlSerial.Deserialize(reader);
                contents = (Status)xContents;
            }
            return(contents);
        }