У меня есть AccountController с действием Login.
Мы подписываем пользователя в нашей службе приложений следующим образом:
_signInManager.AuthenticationManager.SignIn(new AuthenticationProperties { IsPersistent = userDto.RememberMe }, identity);
После этого я перенаправляю пользователя на Home/Index.
В Home/Index параметр User.IsAuthenticated имеет значение true.
Но перед этим перенаправлением в AccountController даже после вызова _signInManager.AuthenticationManager.SignIn(...) User.IsAuthenticated имеет значение false.
Что мы делаем не так?
Проблема в том, что мне нужно провести модульное тестирование AccountController и проверить, действительно ли после вызова _signInManager.AuthenticationManager.SignIn(...) пользователь вошел в систему.
Огромное спасибо за помощь
Даниэль
ИЗМЕНИТЬ:
После использования этого кода:
ClaimsPrincipal principal = new ClaimsPrincipal(identity);
System.Threading.Thread.CurrentPrincipal = principal;
HttpContext.Current.User = principal;
Работает хорошо, но пахнет странно!