首页 > 解决方案 > ASP.NET - 传输文件和 Response.End 将“线程中止”附加到文件内容

问题描述

我有一个 ASP.NET 网页,它生成一个文件并在用户提交表单后返回它;

但是,文件内容在由 ASP.NET 发送时正在被修改。

代码如下:

        Response.TransmitFile(fileName)
        Response.[End]()

这会导致文件内容在其末尾包含此文本 -

威胁已经被清除了。

这会损坏文件,因为它的内容是加密的,稍后会被应用程序读取。

有没有办法让我在用户单击 ASP.NET 中的按钮后发送文件而不会导致此文件损坏?

这不是我可以永久存储和链接的东西,它是根据用户在网站上的输入生成的。

标签: asp.netvb.net

解决方案


结束响应会产生错误。将 response.end 包装在错误处理程序中,如下所示:

try
response.end
catch ex as System.Threading.ThreadAbortException
 ' do nothing

end try

推荐阅读