使用[HandleError]属性而不是Error View时是否可以调用Action?

时间:2014-01-22 03:03:07

标签: asp.net-mvc asp.net-mvc-3

我正在使用MVC3,C#,.NET4。

我正在使用我在Global.asa中设置的[HandleError]属性。

    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute());
    }

在我的web.config中,我有:

    <customErrors mode="On" defaultRedirect="/Views/_Shared/Error.cshtml"/>

是否可以重定向到控制器操作而不是直接转到视图?我想重定向到登录页面以查找某些错误。

非常感谢提前。

1 个答案:

答案 0 :(得分:1)

HandleError过滤器重定向到相应控制器文件夹或共享文件夹中的Error.cshtml页面。它不会重定向到控制器操作。

要重定向到控制器操作,您可以创建类似于继承自HandleErrorIExceptionFilter的FilterAttribute。发生异常时,将其重定向到适当的控制器。