public IActionResult Login(IFormCollection collection, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; Usuario usuario = new Usuario { contrasena = collection["contrasena"], nombreUsuario = collection["nombreUsuario"], }; bool formatoContrasenaValida = usuario.comprobarContrasenaSegura(); if (!formatoContrasenaValida) { ViewBag.Messages = new[] { new AlertViewModel("danger", "Error", "Formato de Contraseña Inválida") }; return(View(usuario)); } string contrasenaEncriptada = _encriptar.encriptarContrasena(usuario.contrasena); Usuario usuarioAlmacenado = _usuarioGateway.obtener(contrasenaEncriptada, usuario.nombreUsuario.ToLower()); if (usuarioAlmacenado != null) { _logger.LogInformation(1, "Usuario válido"); HttpContext.Session?.Set(SessionKeyName, usuario.nombreUsuario.ToLower()); return(RedirectToLocal(returnUrl)); } ViewBag.Messages = new[] { new AlertViewModel("danger", "Error", "Usuario o contraseña inválidos") }; return(View(usuario)); }