Пример #1
0
 private static void SetUdt_LengthChecked( SmiEventSink_Default sink, ITypedSettersV3 setters, int ordinal, SmiMetaData metaData, object value ) {
     if ( ADP.IsNull( value ) ) {
         setters.SetDBNull( sink, ordinal );
         sink.ProcessMessagesAndThrow();
     }
     else {
         System.IO.Stream target = new SmiSettersStream( sink, setters, ordinal, metaData );
         SerializationHelperSql9.Serialize( target, value );
     }            
 }
Пример #2
0
        private static void SetXmlReader_Unchecked(SmiEventSink_Default sink, ITypedSettersV3 setters, int ordinal, XmlReader xmlReader) {
            // set up writer
            XmlWriterSettings WriterSettings = new XmlWriterSettings();
            WriterSettings.CloseOutput = false;		// don't close the memory stream
            WriterSettings.ConformanceLevel = ConformanceLevel.Fragment;
            WriterSettings.Encoding = System.Text.Encoding.Unicode;
            WriterSettings.OmitXmlDeclaration = true;

            System.IO.Stream target = new SmiSettersStream(sink, setters, ordinal, SmiMetaData.DefaultXml);

            XmlWriter xmlWriter = XmlWriter.Create(target, WriterSettings);

            // now spool the data into the writer (WriteNode will call Read())
            xmlReader.Read();
            while (!xmlReader.EOF) {
                xmlWriter.WriteNode(xmlReader, true);
            }
            xmlWriter.Flush();
            sink.ProcessMessagesAndThrow();
        }
 private static void SetSqlXml_Unchecked(SmiEventSink_Default sink, ITypedSettersV3 setters, int ordinal, SqlXml value)
 {
     if (value.IsNull)
     {
         setters.SetDBNull(sink, ordinal);
     }
     else
     {
         XmlReader reader = value.CreateReader();
         XmlWriterSettings settings = new XmlWriterSettings {
             CloseOutput = false,
             ConformanceLevel = ConformanceLevel.Fragment,
             Encoding = Encoding.Unicode,
             OmitXmlDeclaration = true
         };
         Stream output = new SmiSettersStream(sink, setters, ordinal, SmiMetaData.DefaultXml);
         XmlWriter writer = XmlWriter.Create(output, settings);
         reader.Read();
         while (!reader.EOF)
         {
             writer.WriteNode(reader, true);
         }
         writer.Flush();
     }
     sink.ProcessMessagesAndThrow();
 }