public IActionResult login(LoginVeiwModel loginVeiwModel) { if (_user.CheckLoginInfo(loginVeiwModel.Username, loginVeiwModel.Password).Number.Equals(1)) { var userobj = _user.FindByUserName(loginVeiwModel.Username); if (userobj.IsActive) { var claims = new List <Claim>() { new Claim(ClaimTypes.NameIdentifier.ToString(), userobj.Id.ToString()), new Claim(ClaimTypes.Name, userobj.Name) }; var identity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme); var principal = new ClaimsPrincipal(identity); var properties = new AuthenticationProperties { IsPersistent = loginVeiwModel.RememberMe }; HttpContext.SignInAsync(principal, properties); return(Redirect("/admin")); } else { ModelState.AddModelError("PhoneNumber", "حساب کاربری شما فعال نمی باشد"); } } return(View(loginVeiwModel)); }
public LoginPage() { var vm = new LoginVeiwModel(); this.BindingContext = vm; vm.DisplayInvalidLoginPrompt += () => DisplayAlert("Error", "Invalid Login, try again", "OK"); InitializeComponent(); Email.Completed += (object sender, EventArgs e) => { Password.Focus(); }; Password.Completed += (object sender, EventArgs e) => { vm.SubmitCommand.Execute(null); }; }
public async Task <IActionResult> Login(LoginVeiwModel loginUser) { if (ModelState.IsValid) { Microsoft.AspNetCore.Identity.SignInResult result = await _signInManager.PasswordSignInAsync(loginUser.UserName, loginUser.Password, false, false); if (result.Succeeded) { return(RedirectToAction("Index", "Home")); } if (result.IsLockedOut) { ModelState.AddModelError("Lock-out", "Too many login Attemts"); } } return(View(loginUser)); }