从动态网格视图创建CSV

时间:2016-03-30 08:22:30

标签: c# asp.net csv gridview

我有一个包含两个列表框的ASP.net站点。 gridview控件根据选择的项目进行填充。 gridview控件只能有2种不同列名结构中的1种。

我完全忽略了aspx页面上的列标记。

我的C#代码不知道gridview中有列和行,即使它显示在屏幕上。 '另存为'提示运行,我可以下载CSV文件,但没有捕获的数据。

Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition",
 "attachment;filename=GridViewExport.csv");
Response.Charset = "";
Response.ContentType = "application/text";

GridView1.AllowPaging = false;
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 + ',');
    }
    //append new line
    sb.Append("\r\n");
}
Response.Output.Write(sb.ToString());
Response.Flush();
Response.End();

任何帮助都将不胜感激。

0 个答案:

没有答案