public void doesnt_write_header_multiple_times() { using (var memory = new MemoryStream()) { var flatFile = new FlatFile <TestObject>(layout, memory, HandleEntryReadError); flatFile.Write(objects); flatFile.Write(objects); memory.Seek(0, SeekOrigin.Begin); var headerLines = 0; using (StreamReader streamReader = new StreamReader(memory)) { string line = ""; while ((line = streamReader.ReadLine()) != null) { if (line.Contains(nameof(TestObject.NullableEnum))) { headerLines++; } } } Assert.True(headerLines == _headerLinesCount); } }
public static async void LastExecutedBJG() { DateTime FromDate = new DateTime(2015, 5, 1); DataTable excludedBJG = await FindFailedBJG(FromDate); if (excludedBJG.Rows.Count > 0) { FormExcludedBJG FormExcludedBJG = new FormExcludedBJG(); FormExcludedBJG.Show(); FormExcludedBJG.FillListView(excludedBJG); } else { string query = "with last_ex as ( " + "select bjg.bjobgrpik, bj.bjobik, max(ex.startts) max_start " + "from BATCHJOBEXECS ex " + "join BATCHJOBS bj on bj.bjobik = ex.bjobik " + "join BATCHJOBGRPS bjg on bjg.bjobgrpik = ex.bjobgrpik " + "where ex.startts >= to_timestamp(:FromDate,'DD/MM/YYYY HH24:MI:SS') " + "group by bjg.bjobgrpik, bj.bjobik) " + "select bjg.bjobgrp, bj.bjob, ex.bjobstat, lex.max_start, sub.bjobactive, sub.sort " + "from last_ex lex " + "join BATCHJOBEXECS ex on ex.bjobgrpik = lex.bjobgrpik and ex.bjobik = lex.bjobik and ex.startts = lex.max_start " + "join BATCHJOBS bj on bj.bjobik = ex.bjobik " + "join BATCHJOBGRPS bjg on bjg.bjobgrpik = ex.bjobgrpik " + "join BATCHJOBGRPSSUB sub on sub.bjobgrpik = bjg.bjobgrpik and sub.bjobik = bj.bjobik"; OracleCommand cmd = new OracleCommand(query, OraSession.OracleConnection); cmd.Parameters.Add(":FromDate", OracleDbType.Varchar2).Value = FromDate; DataTable dt = await OraSession.ExecuteQueryParallel(cmd); FlatFile.Write(dt); } }
static void Main(string[] args) { using (var connection = new SqlConnection(ConfigurationManager.ConnectionStrings["appConString"].ConnectionString)) { connection.Open(); var groups = connection.Query <HolidayGrouped>(@" SELECT DATEPART(Year, Date) as Year, DATEPART(Month, Date) as Month, count(1) as Count FROM Holidays GROUP BY DATEPART(Year, Date), DATEPART(Month, Date) ORDER BY DATEPART(Year, Date), DATEPART(Month, Date) "); var settings = new Formo.Configuration().Bind <ExportSettings>(); var layout = new Layout <HolidayGrouped> .DelimitedLayout() .WithMember(x => x.Year) .WithMember(x => x.Month) .WithMember(x => x.Count) .WithQuote("\"") .WithDelimiter(";"); using (var file = File.OpenWrite(settings.FileName)) { var flatfile = new FlatFile <HolidayGrouped>(layout, file); flatfile.Write(groups); } } }
public void can_write_read_stream() { using (var memory = new MemoryStream()) { var flatFile = new FlatFile <TestObject>(layout, memory, HandleEntryReadError); flatFile.Write(objects); memory.Seek(0, SeekOrigin.Begin); var objectsAfterRead = flatFile.Read().ToList(); Assert.True(objects.SequenceEqual(objectsAfterRead)); } }
public void can_write_read_stream() { using (var memory = new MemoryStream()) { var flatFile = new FlatFile<TestObject>(layout, memory, HandleEntryReadError); flatFile.Write(objects); memory.Seek(0, SeekOrigin.Begin); var objectsAfterRead = flatFile.Read().ToList(); Assert.True(objects.SequenceEqual(objectsAfterRead)); } }
private static void CreateTestFile() { var testData = new[] { new PersonFlat { Age = 34, Gender = "Male", Name = "Joao", Number = "21", City = "Lisbon", Street = "Main Street" }, new PersonFlat { Age = 33, Gender = "Male", Name = "Joao", Number = "20", City = "Lisbon", Street = "Main Street" }, new PersonFlat { Age = 32, Gender = "Male", Name = "Joao", Number = "19", City = "Lisbon", Street = "Main Street" } }; using (var fileStream = File.OpenWrite(DataFile)) { var flatFile = new FlatFile<PersonFlat>(_layout, fileStream); flatFile.Write(testData); } }