Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void ExportToExcel()
- {
- DataTable tblFiltered = _currentTable.AsEnumerable()
- .Where(r => r.Field<string>("Type") == ExportGridGroup)
- .CopyToDataTable();
- StringBuilder sb = new StringBuilder();
- IEnumerable<string> columnNames = tblFiltered.Columns.Cast<DataColumn>().
- Select(column => column.ColumnName);
- sb.AppendLine(string.Join(",", columnNames));
- foreach (DataRow row in tblFiltered.Rows)
- {
- IEnumerable<string> fields = row.ItemArray.Select(field => """ + field.ToString() + """);
- sb.AppendLine(string.Join(",", fields));
- }
- String result = sb.ToString();
- try
- {
- StreamWriter sw = new StreamWriter("export.csv");
- sw.WriteLine(result);
- sw.Close();
- Process.Start("export.csv");
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- [TestMethod()]
- public void ExportToExcelTest()
- {
- //Step 1: Creating a mock table with columns
- DataTable testtable = new DataTable();
- DataRow mydatarow;
- mydatarow = testtable.NewRow();
- //Step 2: Adding the row
- mydatarow["ColumnA"] = "12345";
- mydatarow["ColumnB"] = "test";
- testtable.Rows.Add(mydatarow);
- StringBuilder sb = new StringBuilder();
- IEnumerable<string> columnNames = testtable.Columns.Cast<DataColumn>().
- Select(column => column.ColumnName);
- sb.AppendLine(string.Join(",", columnNames));
- foreach (DataRow row in testtable.Rows)
- {
- IEnumerable<string> fields = row.ItemArray.Select(field => """ + field.ToString() + """);
- sb.AppendLine(string.Join(",", fields));
- }
- String result = sb.ToString();
- StreamWriter sw = new StreamWriter("export.csv");
- sw.WriteLine(result);
- sw.Close();
- Process.Start("export.csv");
- Assert.Fail();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement