I am trying to export a gridview to a csv file but my code seems to be only exporting the header.
Here is my code:
Protected Sub btnCSV_Click(sender As Object, e As EventArgs) Handles btnCSV.Click
Response.Clear()
Response.Buffer = True
Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.csv")
Response.Charset = ""
Response.ContentType = "application/text"
gvReports.AllowPaging = False
gvReports.DataBind()
Dim sb As New StringBuilder()
For k As Integer = 0 To gvReports.Columns.Count - 1
'add separator
sb.Append(gvReports.Columns(k).HeaderText + ","c)
Next
'append new line
sb.Append(vbCr & vbLf)
For i As Integer = 0 To gvReports.Rows.Count - 1
For k As Integer = 0 To gvReports.Columns.Count - 1
'add separator
sb.Append(gvReports.Rows(i).Cells(k).Text + ","c)
Next
'append new line
sb.Append(vbCr & vbLf)
Next
Response.Output.Write(sb.ToString())
Response.Flush()
Response.End()
End Sub
After I click the Export to CSV button, I only get one line of data (i.e- the header rows of the gridview). What am I doing wrong here?