Tengo el siguiente código que he tipeado en el controlador de cuenta en mi proyecto MVC y estoy en las funciones de administrador y gerente. Cuando inicio sesión, me redirigen al índice de mi casa en lugar de ser redirigido a mi índice AdminApp. ¿Alguna idea de dónde me estoy equivocando en mi código?¿Cómo puedo cambiar el redireccionamiento de inicio de sesión MVC de ASP.Net basado en el rol?
[AcceptVerbs(HttpVerbs.Post)]
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1054:UriParametersShouldNotBeStrings",
Justification = "Needs to take same parameter type as Controller.Redirect()")]
public ActionResult LogOn(string userName, string password, bool rememberMe, string returnUrl)
{
if (!ValidateLogOn(userName, password))
{
return View();
}
FormsAuth.SignIn(userName, rememberMe);
if (!String.IsNullOrEmpty(returnUrl))
{
return Redirect(returnUrl);
}
else
{
if (User.IsInRole("Administrator") || (User.IsInRole("Manager")))
{
return RedirectToAction("Index", "AdminApp");
}
else
{
return RedirectToAction("Index", "Home");
}
}
}
funcionó como un encanto! Aprecio la ayuda! – Ben
Ahora son 3 1/2 años pero ... ¡gracias! – peter
¡Guau! Todavía funciona igual para ** Asp.Net Core **. – vivek