Создание маршрута отработки отказа в MVC 5

Я бы хотел, чтобы любой ненайденный URL-адрес был отправлен на мой «домашний» контроллер. И я имею в виду, что все URL-адреса мусора, переданные в Like SomeDomain/ThisIsNotAController/Goober/adsfasdf1?spacerocket. Ошибка 404 просто сбивает с толку многих людей.

Как мне сопоставить маршрут, чтобы сказать Home/Index, если все остальные терпят неудачу. Я знаю, что вы можете сделать это в Rails. Заранее спасибо. и да, я искал это, но я думаю, я не знаю, что спросить

TW


person TW Scannell    schedule 07.01.2014    source источник
comment
Вот несколько идей setiabud.blogspot .fi/2013/04/   -  person Jani Hyytiäinen    schedule 07.01.2014


Ответы (1)


Вы можете использовать пользовательские ошибки в файле web.config для этой цели, указав метод действия в контроллере, который вы хотите...

public ActionResult NotFound(string aspxerrorpath)
{
    LogManager.Current.LogError(aspxerrorpath);
    Response.StatusCode = 404;
    return View();
}

Создайте представление, как обычно, а затем добавьте элемент пользовательских ошибок в файл web.config...

<customErrors allowNestedErrors="true" mode="On">
   <error statusCode="404" redirect="~/Your_Controller/NotFound"/>
</customErrors>
person Leo    schedule 07.01.2014