ASP.NET导出 - 响应没有结束?

时间:2013-09-14 22:34:22

标签: asp.net export

我正在尝试将一些文本导出到文本文件,这部分工作正常。问题是文本文件在它们的底部得到了一堆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()”......

结尾

谢谢,

麦克

1 个答案:

答案 0 :(得分:0)

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

这对于Generic Handler来说是一个完美的场景。请尝试使用.ashx

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

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