【发布时间】:2017-10-14 01:27:05
【问题描述】:
如何使用 ASP.NET C# Webform 中的每个 foreach 循环在 DataSet 中添加 DataTable 值,实际上我有一个 gridview 并且在 gridview 中选中的复选框数据应该只下载到 xl。
我有下面的代码用于导出到 xl 按钮。
foreach (GridViewRow row in gv_TotalAllReg.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
bool isChecked = ((CheckBox)row.FindControl("chk_box")).Checked;
if (isChecked == true)
{
//var ds = new DataSet();
//var dt = new DataTable("RegistrationDetails");
int index = row.RowIndex;
bo.Para1 = "4";
bo.Para2 = "Innovation";
bo.Para3 = gv_TotalAllReg.DataKeys[index].Values[0].ToString();//Id
}
}
}
dt = bl.Admin_GetInnovationbaseonParaType(bo);
if (gv_TotalAllReg.Rows.Count > 0)
{
dt.TableName = "RegistrationDetails";
ds.Tables.Add(dt);
ExcelHelper.ToExcel(ds, "ApplicationDetails.xls", Page.Response);
btnExport.Visible = true;
}
实际上基于 gridview 中选中的复选框,数据未显示在 xl 表中,只有最后选择的数据显示在 xl 表中。
我没有得到逻辑 ds.Tables.Add(dt); 在每个 foreach 循环的 ds 中添加 dt 值。我需要将所有选定的数据放入 xl 表中。为什么最后选择的数据只出现在 xl 表中。
【问题讨论】:
标签: c# asp.net excel gridview webforms