Ich habe den folgenden Code, den ich in meinem MVC-Projekt in den Account Controller eingegeben habe und ich bin sowohl in der Administrator-und Manager-Rollen. Wenn ich mich anmelde, werde ich zurück zu meinem Heim-Index weitergeleitet, anstatt zu meinem AdminApp-Index umgeleitet zu werden. Irgendwelche Ideen, wo ich in meinem Code falsch liege?Wie kann ich die ASP.Net MVC Login Redirect basierend auf der Rolle ändern?
[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");
}
}
}
arbeitete wie ein Charme! Ich schätze die Hilfe! – Ben
Es ist 3 1/2 Jahre später aber jetzt .. danke! – peter
Wow! Es funktioniert immer noch für ** Asp.Net Core **. – vivek