c# - 将数据集导出到 asp.net c# 中的 excel 表

标签 c# asp.net export-to-excel

我试图将具有 4 个表的数据集导出到 Excel 工作表,很遗憾我不能。我有将数据表导出到 excel 的代码。因此,我没有调用数据集,而是调用了代码中的“ExportToExcel”函数,将数据表导出到 excel 4 次。但是一旦它创建了第一个工作表,它就会停止控制流。控件不调用第二个函数 ("ExportToExcel(dsResult.Tables[2], "AthleteSentCount");") 这是代码

protected void ExportToExcel(object sender, EventArgs e)
{
     ExportToExcel(dsResult.Tables[3], "AthleteInboxCount");
     ExportToExcel(dsResult.Tables[2], "AthleteSentCount");
     ExportToExcel(dsResult.Tables[0], "CoachInboxCount");
     ExportToExcel(dsResult.Tables[1], "CoachSentCount");
}

void ExportToExcel(DataTable dt, string FileName)
{
    if (dt.Rows.Count > 0)
    {
        string filename = FileName + ".xls";
        System.IO.StringWriter tw = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);
        DataGrid dgGrid = new DataGrid();
        dgGrid.DataSource = dt;
        dgGrid.DataBind();

        //Get the HTML for the control.
        dgGrid.RenderControl(hw);
        //Write the HTML back to the browser.
        //Response.ContentType = application/vnd.ms-excel;
        Response.ContentType = "application/vnd.ms-excel";
        Response.AppendHeader("Content-Disposition", 
                              "attachment; filename=" + filename + "");
        this.EnableViewState = false;
        Response.Write(tw.ToString());
        Response.End();
    }
}

如果有人知道用条形图将数据集导出到 excel,请帮助我。否则请给出您的解决方案。

最佳答案

首先你的函数开始流式传输内容

 Response.ContentType = "application/vnd.ms-excel";
                Response.AppendHeader("Content-Disposition", "attachment; filename=" + filename + "");

给最终用户并用 END

Response.End();

此外,如果您修复此问题,您的代码将生成 4 个 excel 文件。

存在用于在堆栈溢出时创建 Excel 工作表的现有代码:How to add additional worksheets to an Excel from DataTable 您必须做的唯一更改是将 xlsx 保存到流并将该流传输给用户。

关于c# - 将数据集导出到 asp.net c# 中的 excel 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19374216/

相关文章:

c# - Epplus excel文件中的下拉项目数量限制

python - BeautifulSoup : extract weather info : table --> Excel file

c# - 如何使用反射调用通用异步方法

c# - 编译器生成的 Cruft

ASP.net swf 游戏文件预览(缩略图)

c# - 应用程序中的服务器错误 '/demo'

crystal-reports - Crystal Report 页眉在导出到 Excel 时不可见(仅限数据)

c# - GroupBy Hour 然后两点之间的平均值

c# - IEnumerable.Intersect 与自定义比较器,不了解行为

c# - Web 服务仅针对某些请求返回 "Access is denied"