internal void GetObjectData(XmlQueryDataWriter writer)
 {
     writer.Write(this.Encoding.CodePage);
     writer.Write(this.OmitXmlDeclaration);
     writer.Write((sbyte)this.NewLineHandling);
     writer.WriteStringQ(this.NewLineChars);
     writer.Write((sbyte)this.IndentInternal);
     writer.WriteStringQ(this.IndentChars);
     writer.Write(this.NewLineOnAttributes);
     writer.Write(this.CloseOutput);
     writer.Write((sbyte)this.ConformanceLevel);
     writer.Write(this.CheckCharacters);
     writer.Write((sbyte)this.outputMethod);
     writer.Write(this.cdataSections.Count);
     foreach (XmlQualifiedName name in this.cdataSections)
     {
         writer.Write(name.Name);
         writer.Write(name.Namespace);
     }
     writer.Write(this.mergeCDataSections);
     writer.WriteStringQ(this.mediaType);
     writer.WriteStringQ(this.docTypeSystem);
     writer.WriteStringQ(this.docTypePublic);
     writer.Write((sbyte)this.standalone);
     writer.Write(this.autoXmlDecl);
     writer.Write(this.ReadOnly);
 }
Exemplo n.º 2
0
 /// <summary>
 /// Serialize the object to BinaryWriter.
 /// </summary>
 public void GetObjectData(XmlQueryDataWriter writer)
 {
     Debug.Assert(this.GetType() == typeof(WhitespaceRule), "Serialization of WhitespaceRule subclasses is not implemented");
     // string localName;
     writer.WriteStringQ(_localName);
     // string namespaceName;
     writer.WriteStringQ(_namespaceName);
     // bool preserveSpace;
     writer.Write(_preserveSpace);
 }
        //
        // Internal methods
        //

        /// <summary>
        /// Serialize the object to BinaryWriter.
        /// </summary>
        internal void GetObjectData(XmlQueryDataWriter writer)
        {
            // Encoding encoding;
            // NOTE: For Encoding we serialize only CodePage, and ignore EncoderFallback/DecoderFallback.
            // It suffices for XSLT purposes, but not in the general case.
            Debug.Assert(Encoding.Equals(Encoding.GetEncoding(Encoding.CodePage)), "Cannot serialize encoding correctly");
            writer.Write(Encoding.CodePage);
            // bool omitXmlDecl;
            writer.Write(OmitXmlDeclaration);
            // NewLineHandling newLineHandling;
            writer.Write((sbyte)NewLineHandling);
            // string newLineChars;
            writer.WriteStringQ(NewLineChars);
            // TriState indent;
            writer.Write((sbyte)IndentInternal);
            // string indentChars;
            writer.WriteStringQ(IndentChars);
            // bool newLineOnAttributes;
            writer.Write(NewLineOnAttributes);
            // bool closeOutput;
            writer.Write(CloseOutput);
            // ConformanceLevel conformanceLevel;
            writer.Write((sbyte)ConformanceLevel);
            // bool checkCharacters;
            writer.Write(CheckCharacters);
            // XmlOutputMethod outputMethod;
            writer.Write((sbyte)_outputMethod);
            // List<XmlQualifiedName> cdataSections;
            writer.Write(_cdataSections.Count);
            foreach (XmlQualifiedName qname in _cdataSections)
            {
                writer.Write(qname.Name);
                writer.Write(qname.Namespace);
            }
            // bool mergeCDataSections;
            writer.Write(_mergeCDataSections);
            // string mediaType;
            writer.WriteStringQ(_mediaType);
            // string docTypeSystem;
            writer.WriteStringQ(_docTypeSystem);
            // string docTypePublic;
            writer.WriteStringQ(_docTypePublic);
            // XmlStandalone standalone;
            writer.Write((sbyte)_standalone);
            // bool autoXmlDecl;
            writer.Write(_autoXmlDecl);
            // bool isReadOnly;
            writer.Write(ReadOnly);
        }