asp.net mvc - una - Redirigir a la acción en otro controlador
redirect to action mvc c# (3)
Puede suministrar el area
en el parámetro routeValues
. Prueba esto:
return RedirectToAction("LogIn", "Account", new { area = "Admin" });
O
return RedirectToAction("LogIn", "Account", new { area = "" });
dependiendo de a qué área estés apuntando.
Tengo dos controladores, ambos llamados AccountController
. Uno de ellos, vamos a llamarlo Controller A
, está en un Area
llamada Admin
y el otro, vamos a llamarlo Controller B
, no está en ningún Area
(supongo que eso significa que está en el Area
predeterminada?). Controller B
tiene un action method
llamado Login
. Tengo un action method
en el Controller A
, que tiene esta línea
return RedirectToAction("LogIn", "Account");
El problema es que obtengo un 404
cuando se ejecuta esta línea porque se intenta redireccionar a una action
no existe en el Controller A
Quiero llamar al action method
en el Controller B
es posible?
Puedes usar esto:
return RedirectToAction("actionName", "controllerName", new { area = "Admin" });
Utilizar esta:
return RedirectToAction("LogIn", "Account", new { area = "" });
Esto redirigirá a la acción LogIn
en el controlador de Account
en el área "global".
Está usando esta sobrecarga de RedirectToAction
:
protected internal RedirectToRouteResult RedirectToAction(
string actionName,
string controllerName,
Object routeValues
)