C# 导出到excel-Windows Server 2008 IIS7上的问题
我正在尝试导出到excel中的repeter/Gridview,C# 导出到excel-Windows Server 2008 IIS7上的问题,c#,asp.net,excel,windows-server-2008,export,C#,Asp.net,Excel,Windows Server 2008,Export,我正在尝试导出到excel中的repeter/Gridview,这在我的本地计算机和windows server 2003中运行良好,但是当我在windows server 2008上部署时,它无法正常运行。这是我的密码 StringWriter sw = new StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); string attachment = "attachment; filename=my
这在我的本地计算机和windows server 2003中运行良好,但是当我在windows server 2008上部署时,它无法正常运行
。这是我的密码
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
string attachment = "attachment; filename=myReport.xls";
Response.ClearContent();
Response.AddHeader("content-disposition", attachment);
Response.ContentType = "application/vnd.ms-excel";
rpt.RenderControl(htw);
Response.Write(sw.ToString());
Response.Flush();
Response.End();
服务器详细信息:Windows Server 2008和IIS7
在mozilla中,所有页面内容都会导出到excel,但在IE&Chrome中,空excel文件会被导出而没有数据。您正在向响应中写入字符串。我希望此文件类型是二进制的,因此您应该使用Response.BinaryWrite()。从rpt.RenderControl(htw)中实际得到了什么?我想,您应该将内容类型更改为text/csv,excel仍将处理该类型。您的意思是我必须添加sw.Flush()而不是Response.Flush()?是的,在将其写入响应之前,请尝试使用sw.Flush。幸运的是,我的文件中没有写入任何内容,无论文件格式是word、excel还是文本,您可以在windows server 2008上尝试一下这个功能,并测试它是否正常工作吗?