我正在建立一个asp.net mvc 4应用程序。我正在使用表单身份验证。我已经为用户设置了角色并对某些角色的控制器进行了身份验证,但我试图弄清楚如何在用户登录时重定向用户我只想让用户定向到某个区域?我认为它与帐户控制器上的登录操作有关。在这里有一个关于角色的switch语句,并在不同的情况下重定向到action?
答案 0 :(得分:2)
如果在Visual Studio中使用默认的MVC项目,则已经有重定向(到上一页):
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
//[RequireHttps]
public ActionResult Login(LoginModel model, string returnUrl)
{
if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
{
return RedirectToLocal(returnUrl);
}
// If we got this far, something failed, redisplay form
ModelState.AddModelError("", "The user name or password provided is incorrect.");
return View(model);
}
如果您希望将其重定向到您自己的网页,只需将return RedirectToLocal(returnurl)
替换为return RedirectToAction("Index", "Home");
,将Index作为您的操作名称,将Home作为您的控制者。