我已将customErrors
模式设置为开启并重定向到:
以下是我在解决方案中的观点:
每当我有一个未处理的异常时,我的应用程序会按预期将我重定向到错误页面。但是,我丢失了异常信息,因为,我假设,该应用程序正在重定向。我甚至在customErrors元素中尝试了redirectMode="ResponseRewrite"
,但这不起作用。
所以,这是我的错误控制器上的“索引”视图,应用程序正在重定向到通知模型:
进一步说,我有:
但是,@ Model是null。如何从customErrors重定向中获取异常信息?
答案 0 :(得分:2)
要获得该模型,您需要使用HandleErrorAttribute
过滤器来捕获错误。
您可以在此处查看说明:http://www.c-sharpcorner.com/UploadFile/abhikumarvatsa/handleerrorattribute-or-error-handling-in-mvc-4/
TL; DR:
禁用重定向,但请确保自定义错误仍然存在:
<customErrors mode="On"/>
确保全局注册HandleErrorAttribute
过滤器(默认情况下):
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
将错误视图移至/重命名为~\Views\Shared\Error.cshtml