Я пытаюсь создать страницу на веб-сайте ASP.NET MVC, где одна страница позволяет выбирать по имени пользователя вместо идентификатора. Я бы подумал, что маршрут должен быть примерно таким:
routes.MapRoute(
"CustomerView", "Customer/Details/{username}",
new { username = "" }
);
routes.MapRoute(
"Default", "{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "0" }
);
но всякий раз, когда я использую HTML.Actionlink, я получаю http://mysite.com/Customer/Details?username=valuehere. Я рассмотрел общий маршрут, как:
routes.MapRoute(
"CustomerView", "Customer/Details/{username}",
new { controller="Customer", action = "Details", username = "" }
);
но я полагаю, что это вызовет больше проблем, если он допустит ошибку, какой маршрут следует применять из двух.