Как удалить «Индекс» из URL - PullRequest
2 голосов
/ 28 января 2012

Как удалить «Index» из следующего URL-адреса siteName / controller / Index / 8 в siteName / controller / 8, и при этом он будет обращаться к методу Index?

1 Ответ

1 голос
/ 28 января 2012

Если вы используете маршруты по умолчанию, это потому, что «Индекс» является значением по умолчанию для параметра маршрута действия:

public static void RegisterRoutes(RouteCollection routes)
{
    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
    );
}

Это означает, что если {действие} опущено из входящего URL, MVCбудет использовать значение по умолчанию, что означает, что он перейдет к методу действия Index.

То же самое с {controller}: если вы опустите / controller из URL, он перейдет к HomeController (и его метод действия Index) потому что они являются значениями по умолчанию для отображения маршрута по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...