我正在尝试将数据表下载为csv。我正在使用以下功能。
public void DtDown(DataTable dt)
{
StringBuilder sb = new StringBuilder();
foreach (DataColumn col in dt.Columns)
{
sb.Append(string.Format("{0},", col.ColumnName));
}
foreach (DataRow row in dt.Rows)
{
sb.Append(string.Format("{0},{1}", row[0], row[1]));
}
string attachment = "attachment; filename=sample.csv";
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.AddHeader("content-disposition", attachment);
HttpContext.Current.Response.ContentType = "text/csv";
HttpContext.Current.Response.AddHeader("Pragma", "public");
HttpContext.Current.Response.Write(sb.ToString());
}
但是此代码提示我下载aspx页面,而不是csv文件。这仅在chrome浏览器中发生。
我想念什么吗?您能否提出解决问题的任何修改建议。