我试图授权,如果你是一个管理员,你将被重定向到一个管理员网站。如果您是会员,它会将您重定向到会员站点。
下面是我在控制器上的代码:
public ActionResult Index(Login model)
{
if (ModelState.IsValid)
{
if (model.IsUserExist(model.EmailId, model.Password))
{
if (Roles.IsUserInRole("Admin"))
{
ViewBag.UserName = model.EmailId;
FormsAuthentication.RedirectFromLoginPage(model.EmailId, false);
return RedirectToAction("AdminSite", "Home");
}
if (Roles.IsUserInRole("Member"))
{
ViewBag.UserName = model.EmailId;
FormsAuthentication.RedirectFromLoginPage(model.EmailId, false);
return RedirectToAction("MemberSite", "MobileHome");
}
}
else
{
ModelState.AddModelError("", "Wrong Email or Password!");
}
}
return View(model);
}我不知道出了什么问题,但网站只是停留在登录页面上。当我以会员或管理员身份登录时,它就会刷新。它没有把我带到管理站点或成员站点。
发布于 2012-05-07 16:59:06
要使用
RedirectFromLoginPage(
string userName,
bool createPersistentCookie
) 方法时,必须在查询字符串中包含ReturnURL变量名。请参阅specyfication。所以它不会到达return RedirectToAction("MemberSite", "Home")或return RedirectToAction("AdminSite", "Home")。如果您要注释掉该方法,它会将您重定向到给定的操作。
https://stackoverflow.com/questions/10479217
复制相似问题