Получение ошибки при экспорте выбранных строк сетки в Excel.ошибка: невозможно вычислить выражение, потому что код оптимизирован или собственный фрейм находится на вершине стека.
На самом деле я хочу экспортировать выбранные строки из сетки в Excel, чтобы пользователь мог легко загрузить выбранныйЗаписи, пожалуйста, используйте код для экспорта в Excel метод Onclick.
protected void btnExportExcel_Click(object sender, EventArgs e)
{
bool isSelected = false;
foreach (GridViewRow i in gvDistrictSchoolReport.Rows)
{
CheckBox cb = (CheckBox)i.FindControl("Chkbox");
if (cb != null && cb.Checked)
{
isSelected = true;
break;
}
}
if (isSelected)
{
GridView gvExport = gvDistrictSchoolReport;
// this below line for not export checkbox to excel file
gvExport.Columns[0].Visible = false;
foreach (GridViewRow i in gvDistrictSchoolReport.Rows)
{
gvExport.Rows[i.RowIndex].Visible = false;
CheckBox cb = (CheckBox)i.FindControl("Chkbox");
if (cb != null && cb.Checked)
{
gvExport.Rows[i.RowIndex].Visible = true;
}
}
try
{
Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment;filename=ExportGridData.xls");
Response.Charset = "";
Response.ContentType = "application/vnd.ms-excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htW = new HtmlTextWriter(sw);
gvExport.RenderControl(htW);
Response.Output.Write(sw.ToString());
Response.Flush();
Response.End();
}
catch(Exception ex)
{
Console.WriteLine(ex);
}
}
}