Estoy intentando navegar entre los controladores usando ActionLink
. Diré mi problema con un ejemplo.Usar Html.ActionLink para llamar a la acción en un controlador diferente
Estoy en la vista de índice del controlador Hat, y estoy tratando de usar el código siguiente para crear un enlace a la acción Detalles del controlador del producto.
<%= Html.ActionLink("Details", "Details", "Product", new { id=item.ID }) %>
En lugar de crear un vínculo con detalles en el controlador del producto, esto genera un enlace a Detalles acción bajo la supervisión del sombrero y agrega un parámetro de longitud al final de la misma:
Hat/Details/9?Length=7
no soy capaz para usar HTML.ActionLink
para cambiar entre los controladores debido a este problema. Apreciaré si me puedes señalar lo que estoy haciendo mal. Gracias
PS: Estoy utilizando la configuración de ruta por defecto que viene con MVC
routes.MapRoute("Default", "{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" });
¿Puede explicar por qué esta sobrecarga en particular? funciona y Korki no? ¿Cómo afecta htmlAttributes a null afectar el enrutamiento del enlace? –
@Derek Hunziker, Simplemente los argumentos son diferentes para la sobrecarga de Korki. –
Es porque si usa los otros parámetros, asume que el tercer argumento es los valores de ruta y el 4to argumento es el htmlattributes. Agregar un quinto argumento obliga al método a usar la sobrecarga correcta. Examine las sobrecargas en intellisense y esto tendrá más sentido. – Banford