2016-07-26 55 views
0

我有很多代码的实例,我将一个gridview导出为ex​​cel。直到最近这一直很好。我最近升级到了Windows 10(相同版本的Excel),并且无法使此功能在任何可用的页面上工作。 Excel打开,但没有工作表。为了证实我的怀疑,我在Windows 7机器上进行了测试,结果表明它工作正常。有没有我在升级过程中丢失的设置?出口代码如下。ASP.Net Gridview导出为Excel中的Windows 10

Protected Sub ExportButton_Click(sender As Object, e As EventArgs) Handles ExportButton.Click 
    SqlDataSource1.SelectCommand = "SELECT * FROM [MyTable]..." 

    Response.Clear() 

    Response.AddHeader("content-disposition", "attachment;filename=FileName.xls") 
    Response.Charset = "" 
    Response.ContentType = "application/vnd.xls" 

    Dim sw As New System.IO.StringWriter 
    Dim hw As New HtmlTextWriter(sw) 
    GridView1.Visible = True 
    GridView1.DataBind() 
    GridView1.RenderControl(hw) 

    Response.Write(sw.ToString) 
    Response.End() 
    GridView1.Visible = False 
End Sub 

Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control) 

End Sub 
+0

那么你并不产生实际的Excel文件,所以这是不好的。您正在制作伪装成XLS文件的HTML文件。您应该使用能够生成真正XLSX文件的库。 – mason

回答