//Método é chamado quando um valor é settado no viewmodel protected override void ToEntidade() { PaginaLoginModel vm = (PaginaLoginModel)ViewModel; Usuario usuario = new Usuario { Email = vm.Username, Senha = vm.Senha }; Entidades[typeof(Usuario).Name] = usuario; }
//Método é chamado quando um valor é settado no dicionário de Entidades protected override void ToViewModel() { if (Entidades.Count > 0) { Usuario usuario = (Usuario)Entidades[typeof(Usuario).Name]; PaginaLoginModel vm = new PaginaLoginModel { Username = usuario.Email }; _viewModel = vm; } }
public IActionResult Login(PaginaLoginModel usuario) { if (String.IsNullOrEmpty(usuario.Senha) || String.IsNullOrEmpty(usuario.Username)) { ViewData["Alert"] = "Username e/ou senha incorreta."; return(View(new PaginaLoginModel { Falhou = true })); } _vh = new PaginaLoginViewHelper { ViewModel = usuario }; Cliente clienteLogin = new Cliente { Usuario = (Usuario)_vh.Entidades[typeof(Usuario).Name] }; Cliente clienteDb = _facade.Query <Cliente>( c => c.Usuario.Email == clienteLogin.Usuario.Email, c => c, c => c.Usuario).FirstOrDefault(); if (clienteDb != null) { if (GerenciadorLogin.comparaSenha(usuario.Senha, clienteDb.Usuario.Senha)) { HttpContext.SignInAsync(GerenciadorLogin.FazerLogin(clienteDb)); if (HttpContext.User.IsInRole("1") || HttpContext.User.IsInRole("2")) { return(RedirectToAction("Home", "Admin")); } return(RedirectToAction("Index", "Home")); } ViewData["Alert"] = "Senha incorreta."; return(View(new PaginaLoginModel { Username = clienteLogin.Usuario.Email, Falhou = true })); } ViewData["Alert"] = "Username e/ou senha incorreta."; return(View(new PaginaLoginModel { Falhou = true })); }