Так что в основном у меня есть атрибут Custom Authorize, и в какой-то момент он генерирует исключение. Я хочу поймать исключение и отобразить сообщение пользователю.customerError handling asp.net mvc4
это Контроллер илит
[HandleError]
public class TestController : BaseController
{
[CustomAuthorize("someperm, someperm2")]
public ActionResult GamblerUser()
{
return View();
}
}
это код в FilterConfig
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
}
это код в Global.asax.cs
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
и web.config
<customErrors defaultRedirect="~/Shared/Error" mode="On">
</customErrors>
и, наконец, вид самого
@model HandleErrorInfo
@{
ViewBag.Title = "Error";
}
<h2>Sorry Error Occured</h2> <br />
<h2>@Model.Exception.Message</h2>
и это сообщение я получаю каждый раз, когда происходит исключение.
Ошибка выполнения Описание: При обработке запроса возникло исключение. Кроме того, при выполнении пользовательской страницы ошибки для первого исключения произошло другое исключение. Запрос был прерван.
Я знаю, что мне не хватает чего-то очень простого, но эта вещь просто дает мне головную боль. Я смотрю на множество примеров, я просто не могу заставить эту работу работать.
переопределить OnException в вашем контроллере, можете ли вы попасть туда? Оказание ошибки не похоже на то, что это проблема. –
Да, это удалено – Dimitri
- это исключение в контексте того, которого вы ожидаете? –