Я пытаюсь написать TinyURL как клон в ASP.NET MVC как первый проект, который привыкнет к фреймворку.TinyURL как маршрутизация с ASP.NET MVC?
Маршрутизация URL-адресов по-прежнему немного запутывает меня, особенно когда я отклоняюсь от контроллера/action/id.
Может ли кто-нибудь из вас ASP.NET MVC ninjas помочь мне настроить простой URL-адрес, аналогичный тому, как TinyURL.com обрабатывает маршруты?
Например:
www.tinyurl.com/
Перенаправление на страницу индекса. Итак, если параметры не переданы, просто вызовите представление Index().
Однако, если вы передадите свой хэш-код tinyurl, мне нужно вызвать действие redirect().
www.tinyurl.com/fbc13
Итак, как бы я идти о создании этого пользовательского маршрута?
routes.MapRoute(
"Default", // Route name
"{tinyhash}", // URL with parameters
new { controller = "Link", action = "ReDirect", tinyhash = "" } // Parameter defaults
);
Это не совсем верно, потому что если вы просто посетите страницу, не хэш в URL, я получил его недобросовестный редиректа() действие, когда я хочу, чтобы вместо этого вызовите индекс().
Предложения о том, как имитировать базовый маршрут TinyURL?
@benrick, спасибо тонну! – KingNestor