C# 将数据从gridview导出到不同的excel工作表

C# 将数据从gridview导出到不同的excel工作表,c#,.net,asp.net,C#,.net,Asp.net,我正在将数据集中的数据绑定到网格,并将数据从网格导出到excel。如果网格中的项数大于50000,将显示错误消息 因此,我想分割数据并在excel的不同工作表中显示它。(我在web应用程序中工作) 使用此代码导出到excel gvExcel.DataSource = DTS; gvExcel.DataBind(); Response.AddHeader("content-disposition", "attachment; filename= filename.xls"); R

我正在将数据集中的数据绑定到网格,并将数据从网格导出到excel。如果网格中的项数大于50000,将显示错误消息

因此,我想分割数据并在excel的不同工作表中显示它。(我在web应用程序中工作)

使用此代码导出到excel

gvExcel.DataSource = DTS;
gvExcel.DataBind();
Response.AddHeader("content-disposition", "attachment; filename= filename.xls");
         Response.ContentType = "application/excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        gvExcel.RenderControl(htw);
        // Style is added dynamically
        Response.Write(style);
        Response.Write(sw.ToString());
        Response.End();

有人能帮我吗?

非常确定您需要实际使用Excel API并创建文档,而不仅仅是它的HTML版本。使用HtmlTextWriter有点糟糕,我讨厌下载使用它的文档,因为它总是一团糟。我必须将其重新保存为xls(因为它实际上只是HTML),并完成修复过程。

以下链接将非常有用

希望这会有帮助