1: System.Text.StringBuilder sb = new System.Text.StringBuilder();
2: foreach (DataColumn col in dtResults.Columns)
3: {
4: sb.Append(col.ColumnName.ToUpper() + ",");
5: }
6:
7: sb.Remove(sb.Length - 1, 1);
8: sb.Append(Environment.NewLine);
9:
10: foreach (DataRow row in dtResults.Rows)
11: {
12: for (int i = 0; i < dtResults.Columns.Count; i++)
13: {
14: sb.Append(row[i].ToString().Replace("\n", " ")
15: .Replace("\n\r", ";").Replace("\r", " ").Replace(",", ";").Replace("0", "0") + ",");
16: }
17:
18: sb.Append(Environment.NewLine);
19: }
20: Response.Clear();
21: Response.ContentType = "text/csv";
22: Response.AppendHeader("Content-Disposition", "attachment; filename="
23: + fileName + ".csv");
24:
25: byte[] BOM = { 0xEF, 0xBB, 0xBF };
26: Response.BinaryWrite(BOM);
27:
28: Response.Write(sb.ToString());
29: Response.End();
30: