Redirigir al usuario desde una URL similar a SEO a una acción de controlador en ASP.NET MVC 2
Frecuentes
Visto 326 equipos
2
¿Es posible redirigir una dirección URL "amigable" seo estática a un controlador / acción sin perder la dirección original?
Por ejemplo:
si navegas a http://localhost/find-the-best-employees
bajo el capó MVC te lleva a http://localhost/Search/Employees (Controlador SearchEmployee, acción de índice). Pero la idea es mantener la dirección http://localhost/find-the-best-employees.
¿Cómo puedo hacer que esto funcione en ASP.NET MVC 2.0?
Estaba echando un vistazo a aquí e aquí sin suerte durante las pruebas.
1 Respuestas
3
En Global.asax defina una ruta como:
routes.MapRoute(
"findEmployess", // Route name
"find-the-best-employees", // URL with parameters
new { controller = "SearchEmployee", action = "Index" } // Parameter defaults
);
Para que esto funcione, debe usar el nombre de ruta al generar la URL, usando este ayudante html
<%: Html.RouteLink("Search Employees","findEmployess")%>
También debe definir esta ruta antes que la ruta predeterminada:
//Your custom routes goes HERE before the default route
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
Respondido el 23 de junio de 11 a las 04:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas asp.net-mvc-2 redirect routing seo or haz tu propia pregunta.
No solo es posible, sino que también es una de las grandes características de ASP.NET MVC. El hecho de que pueda asignar sus URL a cualquier controlador / acción (en lugar de que la URL dicte la clase / archivo a representar) es una gran característica. La solución que sugiere @JOBG parece correcta. - Hector Correa