Я не могу понять, когда после входа в приложение сеанс первый раз доступен вместе с аутентификацией пользователя. Моя цель - после входа пользователя в приложение, чтобы сохранить некоторые данные о пользователе в сеансе (сразу после входа в систему, прежде чем что-либо еще произойдет), поэтому я могу использовать его позже. Я использую шаблон MVC по умолчанию с VS2015. Мой Войти выглядитMVC 5 сеанс после аутентификации
var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false);
switch (result)
{
case SignInStatus.Success:
return RedirectToLocal(returnUrl); //I jump here
case SignInStatus.LockedOut:
return View("Lockout");
case SignInStatus.RequiresVerification:
return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });
case SignInStatus.Failure:
default:
ModelState.AddModelError("", "Invalid login attempt.");
return View(model);
}
private ActionResult RedirectToLocal(string returnUrl)
{
//here I would like to save some stuff into the session, the session is available here but the user is not authenticated yet
if (Url.IsLocalUrl(returnUrl))
{
return Redirect(returnUrl);
}
return RedirectToAction("Index", "Course");
}
Ok, затем я попытался global.asax:
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
//and of course here I have authenticated user but the session is null
}
Можете ли вы помочь мне, пожалуйста?
Почему вам нужно сохранять значения в сеансе? – Hadee
Ну, я хочу сохранить некоторые пользовательские данные для дальнейшего использования в приложении. Сессия выглядит как приятное место, чтобы сохранить ее там :-) –