Ejemplo n.º 1
0
        private static T DeserializeFromXmlReaderInternal <T>(XmlReader xmlReader, Action <Exception> failureAction) where T : class
        {
            XmlSerializer serializer = new XmlSerializer(typeof(T));
            T             result     = default(T);

            try
            {
                XMLSerializableBase.PerformSerializationOperation(delegate
                {
                    result = (serializer.Deserialize(xmlReader) as T);
                });
            }
            catch (InvalidOperationException obj)
            {
                failureAction(obj);
            }
            catch (FormatException obj2)
            {
                failureAction(obj2);
            }
            XMLSerializableBase xmlserializableBase = result as XMLSerializableBase;

            if (xmlserializableBase != null)
            {
                xmlserializableBase.OnDeserialized();
            }
            return(result);
        }
Ejemplo n.º 2
0
        private static void SerializeToXmlWriterInternal(object objectToSerialize, XmlWriter writer)
        {
            XmlSerializer           serializer = new XmlSerializer(objectToSerialize.GetType());
            XmlSerializerNamespaces ns         = new XmlSerializerNamespaces();

            ns.Add(string.Empty, string.Empty);
            XMLSerializableBase.PerformSerializationOperation(delegate
            {
                serializer.Serialize(writer, objectToSerialize, ns);
                writer.Flush();
            });
        }