【发布时间】:2010-05-03 15:36:10
【问题描述】:
我的主要问题是,当上传的文件超过允许的大小(web.config 中的 maxRequestLength)时,我想显示一个自定义错误页面。
上传大文件时,会在调用控制器中的上传操作方法之前引发 HttpException。这是意料之中的。
我试图在自定义属性中捕获异常,并在控制器中覆盖 OnException。为什么不能在属性或 OnException 方法中捕获异常?
虽然可以在 global.asax 中捕获 Application_Error 中的异常,但 Response.Redirect 和 Server.Transfer 都不能用于重定向到自定义错误页面。 Server.Transfer 给出“处理子请求失败”错误,response.redirect 给出“Http headers already sent”错误。
有什么想法吗?
提前致谢!
马库斯
【问题讨论】:
-
不是您问题的答案。我使用 SWFUpload (swfupload.org) 并设置文件大小限制。这样,客户端甚至无法开始上传大于限制的文件。您可以像这样在 JavaScript 中设置限制:file_size_limit:“20 MB”。见文档:demo.swfupload.org/Documentation
标签: c# asp.net asp.net-mvc iis-7 iis-6