c# - net - imagen en actionlink
¿Cómo puedo crear una URL amigable en ASP.NET MVC? (3)
Así es como he implementado la URL slug en mi aplicación. Nota: Maproute predeterminado no se debe cambiar y las rutas se procesan en el orden en que se agregan a la lista de rutas.
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home",
action = "Index",
id = UrlParameter.Optional
} // Parameter defaults
);
routes.MapRoute("Place", "{controller}/{action}/{id}/{slug}", new { controller = "Place", action = "Details", id = UrlParameter.Optional,slug="" });
¿Cómo puedo generar URLs amigables dentro de ASP.NET MVC Framework? Por ejemplo, tenemos una URL que se ve así:
http://site/catalogue/BrowseByStyleLevel/1
El 1 es Id del nivel de estudio (más alto en este caso) para explorar, pero me gustaría volver a formatear la URL de la misma manera que lo hace StackOverflow.
Por ejemplo, estas dos URL lo llevarán al mismo lugar:
https://stackoverflow.com/questions/119323/nested-for-loops-in-different-languages
EDITAR: La parte amiga de la url se conoce como una babosa .
Hay dos pasos para resolver este problema. Primero, crea una nueva ruta o cambia la ruta predeterminada para aceptar un parámetro adicional:
routes.MapRoute( "Default", // Route name
"{controller}/{action}/{id}/{ignoreThisBit}",
new { controller = "Home",
action = "Index",
id = "",
ignoreThisBit = ""} // Parameter defaults )
Ahora puede escribir lo que quiera al final de su URI y la aplicación lo ignorará.
Cuando renderiza los enlaces, debe agregar el texto "amigable":
<%= Html.ActionLink("Link text", "ActionName", "ControllerName",
new { id = 1234, ignoreThisBit="friendly-text-here" });
tienes una ruta en global.asax
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = ""}
// Parameter defaults )
puedes definir tu propia ruta como:
controlador es la clase cs dentro de la carpeta de controladores.
usted puede definir su identificación - con el nombre que elija.
el sistema pasará el valor a su método actionResult.
Puede leer más sobre este paso aquí: http://www.asp.net/learn/mvc/tutorial-05-cs.aspx