コード例 #1
0
        public BLLResponse <Usuario> UpdatePassword(Usuario usuario, string senhaAntiga)
        {
            BLLResponse <Usuario> response = new BLLResponse <Usuario>();

            using (LTContext ctx = new LTContext())
            {
                Usuario userDoDb      = ctx.Usuarios.Find(usuario.ID);
                bool    EhSenhaAntiga = Criptografia.Verificar(senhaAntiga, userDoDb.Salt, userDoDb.Hash);

                if (!EhSenhaAntiga)
                {
                    response.Mensagem = "Senha atual incorreta.";
                    return(response);
                }
                if (userDoDb == null)
                {
                    response.Mensagem = "Algo de errado ocorreu.";
                    return(response);
                }
                else
                {
                    userDoDb.Senha = usuario.Senha;
                    Criptografia.EncriptografarEGuardarSalt(userDoDb);
                    ctx.SaveChanges();

                    response.Sucesso  = true;
                    response.Mensagem = "Senha atualizada com sucesso!";
                    response.Data     = userDoDb;
                    return(response);
                }
            }
        }
コード例 #2
0
        public BLLResponse <Usuario> Registrar(Usuario item, string senhaRepetida)
        {
            List <ErrorField>     erros    = ValidarUsuarioParaRegistro(item, senhaRepetida);
            BLLResponse <Usuario> response = new BLLResponse <Usuario>();

            response.Erros = erros;
            if (response.HasErros)
            {
                response.Sucesso = false;
                return(response);
            }

            Criptografia.EncriptografarEGuardarSalt(item);

            using (LTContext ctx = new LTContext())
            {
                item.PathFotoPerfil = "/UserImages/DefaultCropped.png";
                ctx.Usuarios.Add(item);
                ctx.SaveChanges();
            }
            response.Sucesso = true;
            response.Data    = item;
            return(response);
        }