1private void downloadCSV(DataSet ds, string filename)
2{
3 Response.Clear();
4 Response.ContentType = "text/plain";
5 Response.AppendHeader("content-disposition",
6 "attachment; filename=" + filename + ".csv");
7 Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
8
9 DataTable table = ds.Tables[0];
10
11 //Write the column headers
12 bool first = true;
13 foreach (DataColumn column in table.Columns)
14 {
15 if (!first)
16 {
17 Response.Write(",");
18 }
19 Response.Write("\"");
20 Response.Write(column.ColumnName);
21 Response.Write("\"");
22 first = false;
23 }
24
25 //Write the data
26 foreach (DataRow row in table.Rows)
27 {
28 Response.Write(Environment.NewLine);
29 first = true;
30 foreach (DataColumn column in table.Columns)
31 {
32 if (!first)
33 {
34 Response.Write(",");
35 }
36 Response.Write("\"");
37 Response.Write(row[column.ColumnName]);
38 Response.Write("\"");
39 first = false;
40 }
41 Response.Write(Environment.NewLine);
42 }
43
44 Response.Flush();
45 Response.End();
46}
47