net mvc asp asp.net-mvc asp.net-mvc-areas

asp.net-mvc - mvc - asp net core areas



ASP.NET MVC ActionLink fuera del área (1)

Prueba esto :

<%= Html.ActionLink("Back", "Index", "Home", new { area = "" }, null) %>

Cuando use Áreas, siempre debe especificar el área que está llamando en sus ActionLinks agregando un valor de ruta como el de arriba. Si el enlace está fuera del área (como en su caso), simplemente use un parámetro vacío para el área.

Hay una buena extensión que me parece esencial en cualquier proyecto MVC de ASP.NET ( T4MVC ). Hace que tus ActionLinks se vean mucho más limpios y los protege contra errores.

Así que el código de arriba se verá así:

<%= Html.ActionLink("Back", MVC.Home.Index()) %>

y cuando se usa un área:

<%= Html.ActionLink("Some Link", MVC.Admin.SomeController.SomeAction()) %>

Es una parte del proyecto MvcContrib en codeplex here

Deberías considerar usarlo.

Una tarea simple en MVC, a veces se convierte en un reto difícil.

Bueno, tengo un Area llamada Admin. Tengo una página llamada "Prohibido" dentro del directorio del Compartido en esta área.

El objetivo es simple: necesito crear un Html.ActionLink que genere un enlace para volver a la página de inicio que está FUERA del área de Administración.

Así que trato, <%= Html.ActionLink("Back","Index",new {controller="Home"})%> , y su genera:

http://localhost/Admin/Home/Index

¡Está mal! Quiero:

http://localhost/Home/Index

¿Cómo puedo crear un enlace desde un área a la estructura de controladores predeterminada?