Там находится пользователь войти на домашней странице в модальном окне с помощью Ajax (он использует метод LogIn
от User
Controller)Проверьте пользователь авторизован в действии (ASP.NET MVC)
[HttpPost]
[AjaxAction]
public ActionResult LogIn(UserModel user)
{
if (ModelState.IsValid)
{
if (IsValid(user.Email, user.Password))
{
FormsAuthentication.SetAuthCookie(user.Email, false);
return Json(new { status = "OK", message = "Success" }, JsonRequestBehavior.AllowGet);
}
}
return Json(new { status = "ERROR", message = "Data is incorrect" }, JsonRequestBehavior.AllowGet);
}
и если войти в был успешно, я перенаправляю на страницу Task/Index
.
Я хотел бы добавить чек в Index
действие Home
Контроллер, если пользователь уже уполномочен, перенаправить его на Task/Index
, в противном случае показать Index
вид Home
Контроллер.
Я попытался код ниже
public class HomeController : Controller
{
public ActionResult Index()
{
if (User.Identity.IsAuthenticated)
{
return Redirect("/Task/Index");
}
return View();
}
}
но перенаправлять работы в любом случае. Как это исправить?
Когда вы говорите, что перенаправление работает в любом случае, значит, свойство IsAuthenticated всегда верно, даже если это совершенно новый сеанс? –
Если User.Identity.IsAuthenticated истинно, значит, ваш пользователь вошел в систему, вам нужно выйти из системы –