Справка по маршрутизации ASP.NET MVC - PullRequest
1 голос
/ 02 мая 2011

У меня есть следующие URL-адреса:

http://localhost/About
http://localhost/Contact
http://localhost/Shop
http://localhost/Shop/ListProducts/{CategoryID}/{CategoryName}
http://localhost/Shop/Checkout
http://localhost/Customer
http://localhost/Customer/Edit
http://localhost/Customer/ChangePassword
http://localhost/Authentication/LogOn
http://localhost/Authentication/LogOff

и следующие карты:

routes.MapRoute("Authentication", "Authentication/{action}", New With {.controller = "Authentication", .action = "Index"})
routes.MapRoute("Customer", "Customer/{action}", New With {.controller = "Customer", .action = "Index"})
routes.MapRoute("Shop", "Shop/{action}/{CategoryID}/{CategoryName}", New With {.controller = "Shop", .action = "Index", .CategoryID = UrlParameter.Optional, .CategoryName = UrlParameter.Optional})
routes.MapRoute("Main", "{action}", New With {.controller = "Main", .action = "Index"})
routes.MapRoute("Default", "{controller}/{action}/{id}", New With {.controller = "Main", .action = "Index", .id = UrlParameter.Optional})

Хотя это, кажется, работает, мне нужен способ обработки неизвестных маршрутов /URL с 404.

Я посмотрел несколько примеров здесь, и, кажется, не могу заставить их работать.

Кроме того, эти маршруты выглядят правильно?Я на правильном пути?

Спасибо

1 Ответ

3 голосов
/ 02 мая 2011

Вы на правильном пути - посмотрите эту публикацию, чтобы обработать ВСЕ 404.

Как мне сделать перехват всех маршрутов для обработки запросов "404 страница не найдена" для ASP.NET MVC?

конкретно эта часть

routes.MapRoute(
    "404-PageNotFound",
    "{*url}",
    new { controller = "StaticContent", action = "PageNotFound" }
    );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...