У меня возникли проблемы с перенаправлением на контроллер ошибок при возникновении ошибки приложения в Global.asax.Перенаправление на страницу ошибки Не удалось выполнить ошибку приложения в Global.asax (MVC)
Вот мой RouteCollection
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
routes.MapRoute(
"DefaultError",
"{controller}/{action}/{id}",
new { controller = "HndlError", action = "AllErrors", id = UrlParameter.Optional }
);
И Мои Global.asax
Application_Error
имеет этот
this.Context.Response.Clear();
this.Context.ClearError();
//this.Response.Redirect("~/HndlError/AllErrors") // This one Works !!!
this.Response.RedirectToRoute(new { controller = "HndlError",
action = "AllErrors", id = ErrorMessage }); // This does not Work
this.Response.End();
My Controller Action действительно получить удар при использовании Response.Redirect
, но возвращает пустую страницу с RedirectToRoute
. Сделал еще несколько поисков, а затем наткнулся на эту GEM!
Beware of ResponseRedirectToRoute in MVC 3
Это значит, что он не будет работать в MVC3 или я что-то отсутствует? Пожалуйста помоги.
благодаря
Remove 'this.Response.End();' от конца 'Application_Error'. – Mairaj
Уже пробовал, что. – Deb