Я только начинаю работать с ASP.NET MVC.
В чем разница между MapRoute и route.Add?
Должен ли я просто использовать MapRoute? Могу ли я отобразить несколько маршрутов? Какие "карты" имеют приоритет ... те, которые вы назвали первыми или последними?
Я бы хотел сделать что-то похожее на то, что StackOverflow делает для пользователей.
Но я бы хотел, чтобы URL соответствовал этому шаблону:
«Пользователь / {домен} / {имя пользователя}» для перенаправления на UserController
и для всех других запросов выполнить типичную маршрутизацию ASP.NET MVC. например:
routes.MapRoute(
"Default", "{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
UPDATE:
При использовании URL: http://localhost:3962/User/MYDOMAIN/BTYNDALL
Я получаю сообщение об ошибке: HTTP 404. Ресурс, который вы ищете (или одна из его зависимостей), мог быть удален, изменилось его имя или временно недоступен.
Вот код, который я использую:
public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"User",
"User/{domain}/{username}",
new { controller = "User", action = "Index" }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
}
protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}
}