private void button3_Click(object sender, EventArgs e) { if(Validate()) { var srcDirectoryName = @"C:\Reportes"; var destDirectoryName = @"C:\Reportes\Merge\ReporteConsolidado" + mes_cmb.SelectedItem.ToString() + ".csv"; var allCsv = Directory.EnumerateFiles(srcDirectoryName, "*", System.IO.SearchOption.TopDirectoryOnly); string[] header = { File.ReadLines(allCsv.First()).First(l => !string.IsNullOrWhiteSpace(l)) }; var mergedData = allCsv .SelectMany(csv => File.ReadLines(csv) .SkipWhile(l => string.IsNullOrWhiteSpace(l)).Skip(1)); // skip header of each file File.WriteAllLines(destDirectoryName, header.Concat(mergedData)); MessageBox.Show("El reporte consolidado se ha generado exitosamente..."); IO io = new IO(); var dataTable = io.GetDataTabletFromCSVFile(destDirectoryName); //var dataTable = GetDataTabletFromCSVFile(destDirectoryName); DataAccess da = new DataAccess(); da.InsertDataIntoSQLServerUsingSQLBulkCopy(dataTable); this.Close(); } }