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
)