gridview 导出2W条记录,内存溢出,麻烦高手们给个解决方案。
 private void ExportCSV(string sql)
    {
        Response.Clear();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", "attachment;filename=测试.xls");
        Response.Charset = "";
        Response.ContentType = "application/text";
        GridView1.AllowPaging = false;
        SqlDataSource1.SelectCommand = sql;
        GridView1.DataBind();
        StringBuilder sb = new StringBuilder();
        for (int k = 0; k < GridView1.Columns.Count; k++)
        {
            //add separator 
            sb.Append(GridView1.Columns[k].HeaderText + ',');
        }
        //append new line 
        sb.Append("\r\n");
        for (int i = 0; i < GridView1.Rows.Count; i++)
        {
            for (int k = 0; k < GridView1.Columns.Count; k++)
            {
                //add separator 
                sb.Append(GridView1.Rows[i].Cells[k].Text.Trim().Replace("&nbsp;", "") + ',');
            }
            //append new line 
            sb.Append("\r\n");
        }
        Response.Output.Write(sb.ToString());
        Response.Flush();
        Response.End(); 
    }