I found my mistake; I tried adding a new route to the routing table (in my global.asax.cs), but I placed it
after the existing ones, instead of
before.
The following code did the trick: protected void Application_Start(object sender, EventArgs e) {
RouteTable.Routes.Add(new Route {
Url = "Products/List/[category]",
Defaults = new { controller = "Products", action = "List", category = (string)null },
RouteHandler = typeof(MvcRouteHandler)
});
RouteTable.Routes.Add(new Route {
Url = "[controller]/[action]/[id]",
Defaults = new { action = "Index", id = (string)null },
RouteHandler = typeof(MvcRouteHandler)
});
RouteTable.Routes.Add(new Route {
Url = "Default.aspx",
Defaults = new { controller = "Home", action = "Index", id = (string)null },
RouteHandler = typeof(MvcRouteHandler)
});
}