C# 如何处理内容处置错误

C# 如何处理内容处置错误,c#,asp.net,http,error-handling,content-disposition,C#,Asp.net,Http,Error Handling,Content Disposition,我应该如何处理在发送附件的内容处置标头后发生的异常?我试图在服务器上生成报告并将其作为文件发送,但如果在报告生成过程中发生异常,则错误消息本身将发送到浏览器,浏览器仍将其作为文件的内容并显示另存为对话框。用户无法知道生成报告时出错,请保存格式错误的文件 有没有办法取消带有此标题的响应并重定向到错误页面?或者我还能做些什么来通知用户错误 可能我可以先生成报告,并且只有在没有错误的情况下才发送头,但我希望报告直接呈现到响应输出流,这样它就不需要保留在内存中 这是我的密码: this.Response

我应该如何处理在发送附件的内容处置标头后发生的异常?我试图在服务器上生成报告并将其作为文件发送,但如果在报告生成过程中发生异常,则错误消息本身将发送到浏览器,浏览器仍将其作为文件的内容并显示另存为对话框。用户无法知道生成报告时出错,请保存格式错误的文件

有没有办法取消带有此标题的响应并重定向到错误页面?或者我还能做些什么来通知用户错误

可能我可以先生成报告,并且只有在没有错误的情况下才发送头,但我希望报告直接呈现到响应输出流,这样它就不需要保留在内存中

这是我的密码:

this.Response.ContentType = "application/octet-stream";
this.Response.AddHeader("Content-Disposition", @"attachment; filename=""" + item.Name + @"""");
this.Response.Flush();

GenerateReportTo(this.Response.OutputStream); // Exception occurs

感谢您的建议

这实际上并不是特定于内容配置的

一旦开始发送响应正文,就无法更改HTTP状态。如果此时发生错误,我所知道的发出错误信号的唯一方法就是关闭连接