Hello Sir,
I'm trying to export the GridView data to CSV format, but while export the last column for edit/delete is also getting exported, please help me how to remove the last column
public void BindGrid(GridView GridView1)
{
DataTable dt = new DataTable();
// dt = obj_select.select_all();
dt = obj_select.select_all(DropDownList4.SelectedItem.Text, DropDownList3.SelectedItem.Text);
GridView1.DataSource = dt; // give data to GridView
GridView1.DataBind();
ViewState["Data"] = dt;
con.Close();
}
protected void Button1_Click(object sender, EventArgs e)
{
if (DropDownList3.SelectedItem.Text == "------Select Year------" || DropDownList4.SelectedItem.Text == "---Select Month---")
{
ScriptManager.RegisterStartupScript(this, GetType(), "SweetAlert", "swal('Warning!', 'Please search the data before export!', 'warning');", true);
}
else
{
BindGrid(GridView1);
Response.Clear();
Response.Buffer = true;
string strFileName = "Fileupload" + DateTime.Now.ToShortDateString() + ".csv";
Response.AddHeader("content-disposition", "attachment;filename=" + strFileName);
Response.Charset = "";
Response.ContentType = "application/text";
DataTable dt = ViewState["Data"] as DataTable;
DataTable dt2 = new DataTable();
for (int i = 0; i < dt.Columns.Count; i++)
{
dt2.Columns.Add(dt.Columns[i].ColumnName, typeof(string));
}
for (int i = 0; i < dt.Rows.Count; i++)
{
dt2.ImportRow(dt.Rows[i]);
dt2.Rows[i]["from"] = Convert.ToDateTime(dt2.Rows[i]["delivered_from"]).ToString("yyyy-MM-dd");
dt2.Rows[i]["to"] = Convert.ToDateTime(dt2.Rows[i]["delivered_to"]).ToString("yyyy-MM-dd");
}
this.GridView1.DataSource = dt2;
this.GridView1.DataBind();
StringBuilder sb = new StringBuilder();
for (int k = 0; k < GridView1.Columns.Count; k++)
{
sb.Append(GridView1.Columns[k].HeaderText + ',');
}
sb.Append("\r\n");
for (int i = 0; i < GridView1.Rows.Count; i++)
{
for (int k = 0; k < GridView1.Columns.Count; k++)
{
string cell = GridView1.Rows[i].Cells[k].Text.Trim().Replace(" ", "").Replace(""", "\"");
sb.Append("=\"" + cell + "\",");
}
sb.Append("\r\n");
}
Response.Output.Write(sb.ToString());
Response.Flush();
Response.End();
}
}
Please help
Thanks in advance