0

我正在尝试将一些文本导出到文本文件,并且该部分工作正常。问题是文本文件在它们的底部得到了一堆 HTML/.NET 输出......换句话说,就像响应没有结束,页面正在尝试写入页面的其余部分。这是代码:

        Private Sub WriteData(ByRef Context As System.Web.HttpContext, Data As List(of String), fileName as String)

        With Context.Response
            .Clear()
            .ClearHeaders()
            .ClearContent()
            .AddHeader("content-disposition", String.Format("attachment; filename={0}", fileName))
            .ContentType = contentType
        End With

        For Each curValue in Data
            Context.Response.Write(curValue)
            Context.Response.Write(Environment.NewLine)
        Next
        Context.ApplicationInstance.CompleteRequest()
        Context.Response.End()
    End Sub

要调用它,我只需传递 HttpContext.Current 和数据列表。

有谁知道为什么会发生这种情况?我不知道如何解释它,而且我没有太多运气。我的假设是响应实际上并没有以“Response.End()”结尾......

谢谢,

麦克风

4

1 回答 1

0

我的假设是您正在使用 an.aspx来执行此操作。

对于通用处理程序来说,这将是一个完美的场景。尝试.ashx改用。

如果您需要更多信息,这是一个非常简单的教程:

http://www.brainbell.com/tutorials/ASP/Generic_Handlers_%28ASHX_Files%29.html

于 2013-09-14T22:42:33.143 回答