我已经在VS2010中创建了一个新的MVC应用程序。在家庭控制器中,我还有以下内容:
[HandleError(View = "Error")]
public ActionResult Index()
{
int num1 = 0;
int num2 = 5;
int result = num2 / num1;
return View();
}
这会创建一个错误并弹出调试,如果我继续黄色屏幕。我无法让它重定向到Error.aspx页面。我有这样的web.config:
<customErrors mode="On" defaultRedirect="~/Error.aspx">
</customErrors>
但它不会重定向到正确的错误页面,尽管它是一个全新的项目。如何配置这个工作请????
感谢
答案 0 :(得分:1)
这在MVC概述教程中讨论。 IIS错误的行为取决于您的IIS版本。
答案 1 :(得分:1)
如果我尝试复制这个,我会被重定向到共享视图文件夹中的默认错误视图 - 看起来MVC会覆盖对web.config中对defaultRedirect属性所做的任何设置。
在您的web.config中,您尝试重定向到物理aspx页面。操作中的HandleError属性将尝试在特定视图文件夹中首先查找名为Error的视图,然后转到共享视图文件夹。只需选择其中一个就可以了。
答案 2 :(得分:0)
试试此博文:http://msnetprogrammer.net/blog/post/HandleError-attribute-%28MVC%29.aspx
此外,默认的视图名称为“错误”,因此从技术上讲,您可以拥有[HandleError]