我很难将XML流发送到客户端浏览器。我已经对此进行了相当的研究,并且一切都看起来很正确 - 此外,类似的代码在此应用的以前版本中也适用。任何想法我可能做错了什么?将XML输出为ASP.NET中的文件
以下代码不会引发错误,但不会在客户端计算机上下载文件。
Public Shared Sub Export(ByVal source As DataTable)
Try
With Current.Response
Dim xml As String = CreateExcelXMLFromDataTable(source.DefaultView)
.Clear()
.Buffer = True
.ContentType = "application/vnd.ms-excel"
.AddHeader("Content-Disposition", String.Concat("attachment;filename=", "export.xlsx", ";"))
.AddHeader("Content-Length", xml.Length.ToString)
.Charset = ""
.Write(xml)
.Flush()
.Close()
End With
Catch ex As Exception
Console.WriteLine(ex.Message.ToString)
End Try
End Sub
谢谢!
你有什么迹象表明它是错的?是否有错误讯息?意外的输出? – David
根本没有错误消息。什么都没有,当我否则期望一个文件下载或下载对话框弹出。 – christok
你确定代码正在执行吗?当你调试这个时,会发生什么?请注意,在调试器外部,您忽略了此代码中的任何和所有错误。你期望'Console.WriteLine'在Web应用程序中做什么?所以很可能是一个错误,你只是明确地忽略它。 – David