Example #1
0
        public static DomDocument LoadXmlFileWithCreateDocument(
            System.IO.Stream stream,
            DomDocument sourceDocument)
        {
            if (stream == null)
            {
                throw new ArgumentNullException("stream");
            }
            XmlSerializer ser = DocumentSaver.GetDocumentXmlSerializer(
                sourceDocument == null ? typeof(DomDocument) : sourceDocument.GetType());

            System.Xml.XmlTextReader reader = new System.Xml.XmlTextReader(stream);
            reader.Normalization = false;
            DomDocument document = ( DomDocument )ser.Deserialize(reader);

            if (string.Compare(document.EditorVersionString, "1.1") < 0)
            {
                // 修复ListSource
            }
            if (sourceDocument != null)
            {
                document.ServerObject = sourceDocument.ServerObject;
                document.Options      = sourceDocument.Options;
            }
            document.AfterLoad(FileFormat.XML);
            return(document);
        }
Example #2
0
        public static void SaveXmlFile(System.IO.TextWriter writer, DomDocument document)
        {
            if (writer == null)
            {
                throw new ArgumentNullException("writer");
            }
            if (document == null)
            {
                throw new ArgumentNullException("document");
            }
            XmlSerializer ser = GetDocumentXmlSerializer(document.GetType());

            //document._xmlSerializing = true;
            //document.ContentStyles.UpdateStyleIndex();
            document.EditorVersion = DomDocument.CurrentEditorVersion;
            document.DeleteUselessStyle();
            document._ElementsForSerialize = null;
            document._Deserializing        = false;
            document.ContentStyles.Styles.UpdateStyleIndex();
            document.FixDomState();
            //ClearElementsForSerialize(document);
            ser.Serialize(writer, document);
            document.FixDomState();
            //ClearElementsForSerialize(document);
            //document._xmlSerializing = false;
        }
Example #3
0
        public static DomDocument LoadXmlFileWithCreateDocument(
            System.Xml.XmlReader reader,
            DomDocument sourceDocument)
        {
            if (reader == null)
            {
                throw new ArgumentNullException("reader");
            }
            XmlSerializer ser = DocumentSaver.GetDocumentXmlSerializer(
                sourceDocument == null ? typeof(DomDocument) : sourceDocument.GetType());

            if (reader is System.Xml.XmlTextReader)
            {
                ((System.Xml.XmlTextReader)reader).Normalization = false;
            }
            DomDocument document = (DomDocument)ser.Deserialize(reader);

            if (sourceDocument != null)
            {
                document.ServerObject = sourceDocument.ServerObject;
                document.Options      = sourceDocument.Options;
            }
            document.AfterLoad(FileFormat.XML);
            return(document);
        }
Example #4
0
        /// <summary>
        /// Visits the <paramref name="document"/> element.
        /// </summary>
        /// <param name="document"></param>
        public virtual void Visit(DomDocument document)
        {
            try
            {
                VisitChildElements(document);
            } // try

            catch (Exception e)
            {
                throw new AuthoringException(string.Format("Failed to author {0}", document.GetType().FullName), e);
            } // catch
        }