Ir ao conteúdo
  • Cadastre-se

HTML Apresentar uma mensagem ao utilizador atraves do controller


Posts recomendados

Ola, 

estou a tentar apresentar uma imagem ao utilizador atraves do controller:

 public IActionResult Login(string user, string password, string? ReturnUrl)
        {
            SHA512 sha512 = SHA512Managed.Create();
            byte[] bytes = sha512.ComputeHash(Encoding.UTF8.GetBytes(password), 0, Encoding.UTF8.GetByteCount(password));


            string passHash = Convert.ToBase64String(bytes);

            Socios socio = _context.Socios.Include(s => s.Gerir).Include(s => s.Mensagem).Include(s => s.Participa).Include(s => s.PersonalTrainer).Include(s => s.Peso).Include(s => s.PlanosExercicios).FirstOrDefault(s => s.NomeUtilizador == user && s.Password == password);
            if (socio != null)
            {
                HttpContext.Session.SetString("Nome", socio.NomeUtilizador);
                HttpContext.Session.SetInt32("UserId", socio.Idsocio);

                HttpContext.Session.SetString("Perfil", "Socio");

            }
            Professores prof = _context.Professores.Include(p => p.MapaAulasGrupo).Include(p => p.Mensagem).Include(p => p.Peso).Include(s => s.PersonalTrainer).Include(p => p.PlanosExercicios).FirstOrDefault(p => p.Nome == user && p.Password == password);
            if (prof != null)
            {
                HttpContext.Session.SetString("Nome", prof.Nome);
                HttpContext.Session.SetInt32("UserId", prof.Idprofessor);


                HttpContext.Session.SetString("Perfil", "Professor");

            }
            Administrador admin = _context.Administrador.Include(a => a.Gerir).SingleOrDefault(a => a.Nome == user && a.Password == password);
            if (admin != null)
            {
                HttpContext.Session.SetString("Nome", admin.Nome);
                HttpContext.Session.SetInt32("UserId", admin.Idadministrador);


                HttpContext.Session.SetString("Perfil", "Administrador");

            }

            if (String.IsNullOrEmpty(ReturnUrl))
            {
                //ModelState.AddModelError("","Utilizador inexistente na base de dados!");
                TempData["mensagemErro"] = "Utilizador inexistente na base de dados!";
                return LocalRedirect("/");
            }
            else
            {
                return LocalRedirect(ReturnUrl);
            }
        }

E na view com o formulario de login tenho: 

<table border="0" style="height: 315px; width: 100%; border-collapse: collapse; border-style: hidden; text-align:center" height="76">
    <tr>
        <td>
            <div class="container">
                <div class="row">
                    <div class="col-md-3">

                        <form asp-action="Login" asp-controller="Home" method="post" style="display: inline-block">
                            <div class="form-group">
                                <label style="color:white">Nome utilizador</label>
                                <input type="text" class="form-control" id="user" name="user" placeholder="Utilizador" required>
                            </div>
                            <div class="form-group">
                                <label><p style="color:white">Password</p></label>
                                <input type="password" class="form-control" name="password" id="password" placeholder="Password" required>
                                <input type="button" id="showPassword" value="Mostrar" class="button" style="text-align:left" />
                            </div>
                            
                                <div class="form-check">
                                    <button type="submit" value="create " class="btn btn-default" style=" color:white; background-color:blue" href="~/Home/Index">Entrar </button>

                                </div>
                        </form>
                        <br />
                        <br />
                        <small style="color:white; text-align:left; font-family: Georgia, 'Times New Roman', Times, serif"> Ainda não tem conta?  <br /> <b> <a href="~/Home/Registo"> Registe-se aqui < </a> </b> </small>

                    </div>
                </div>
            </div>
        </td>
        @if (TempData["mensagemErro"] != null)
        {
            <div class="field-error">
                @TempData["mensagemErro"]
            </div>
        }
    </tr>
</table>

Mas ao correr ele nao apresenta a mensagem no ecran, ja usei um break point para verificar e quando o utilizador insere mal os dados ele entra no if mas nao apresenta a mensagem... retorna me o index. Alguem sabe como posso resolver isso ?

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...