Exemplo n.º 1
0
        internal static string ToText(object rec, ChoCSVRecordConfiguration configuration, Encoding encoding, int bufferSize, TraceSwitch traceSwitch = null)
        {
            if (rec is DataTable)
            {
                StringBuilder csv = new StringBuilder();
                configuration = configuration == null ? new ChoCSVRecordConfiguration().Configure(c => c.WithFirstLineHeader()) : configuration;
                using (var w = new ChoCSVWriter(csv, configuration))
                    w.Write(rec as DataTable);
                return(csv.ToString());
            }
            else if (rec is IDataReader)
            {
                StringBuilder csv = new StringBuilder();
                configuration = configuration == null ? new ChoCSVRecordConfiguration().Configure(c => c.WithFirstLineHeader()) : configuration;
                using (var w = new ChoCSVWriter(csv, configuration))
                    w.Write(rec as IDataReader);
                return(csv.ToString());
            }

            ChoCSVRecordWriter writer = new ChoCSVRecordWriter(rec.GetType(), configuration);

            writer.TraceSwitch = traceSwitch == null ? ChoETLFramework.TraceSwitchOff : traceSwitch;

            using (var stream = new MemoryStream())
                using (var reader = new StreamReader(stream))
                    using (var sw = new StreamWriter(stream, configuration.Encoding, configuration.BufferSize))
                    {
                        writer.WriteTo(sw, new object[] { rec }).Loop();
                        sw.Flush();
                        stream.Position = 0;

                        return(reader.ReadToEnd());
                    }
        }
Exemplo n.º 2
0
        internal static string ToText(object rec, ChoCSVRecordConfiguration configuration, Encoding encoding, int bufferSize, TraceSwitch traceSwitch = null)
        {
            ChoCSVRecordWriter writer = new ChoCSVRecordWriter(rec.GetType(), configuration);

            writer.TraceSwitch = traceSwitch == null ? ChoETLFramework.TraceSwitchOff : traceSwitch;

            using (var stream = new MemoryStream())
                using (var reader = new StreamReader(stream))
                    using (var sw = new StreamWriter(stream, configuration.Encoding, configuration.BufferSize))
                    {
                        writer.WriteTo(sw, new object[] { rec }).Loop();
                        sw.Flush();
                        stream.Position = 0;

                        return(reader.ReadToEnd());
                    }
        }
Exemplo n.º 3
0
 public void Write(IEnumerable <T> records)
 {
     _writer.Writer      = this;
     _writer.TraceSwitch = TraceSwitch;
     _writer.WriteTo(_textWriter, records).Loop();
 }
Exemplo n.º 4
0
        public void Write(IEnumerable <T> records)
        {
            ChoCSVRecordWriter writer = new ChoCSVRecordWriter(typeof(T), Configuration);

            writer.WriteTo(_txtWriter, records).Loop();
        }
Exemplo n.º 5
0
 public void Write(IEnumerable <T> records)
 {
     _writer.Writer      = this;
     _writer.TraceSwitch = TraceSwitch;
     _writer.WriteTo(_textWriter.Value, records).Loop(() => ++ _recordNumber);
 }
Exemplo n.º 6
0
 public void Write(IEnumerable <T> records)
 {
     _writer.WriteTo(_textWriter, records).Loop();
 }