/// <summary>
        /// Regresa el Id del usuario insertado
        /// </summary>
        /// <param name="id"></param>
        /// <param name="nombre"></param>
        /// <param name="contraseña"></param>
        /// <param name="activo"></param>
        /// <returns></returns>
        public async Task <int> Save(
            int?id,
            string nombre,
            string contraseña,
            bool?activo
            )
        {
            var usuario = await repository.FindById(id) ?? new Usuario();

            usuario.Nombre = nombre;
            if (!string.IsNullOrEmpty(contraseña))
            {
                usuario.Contraseña = HashPassword(contraseña);
            }
            usuario.Activo = activo ?? throw new ValidationErrorException(nameof(Usuario.Activo), ValidationErrorType.Required);

            await repository.Save(usuario);

            return(usuario.Id);
        }
Exemple #2
0
        public void RepositoryTest()
        {
            CrudRepository <Users> userRepo = new CrudRepository <Users>();
            Users user1 = new Users {
                UserFirstName = "Test", UserLastName = "Test"
            };

            userRepo.Add(user1);

            Assert.AreNotEqual(0, user1.Id);

            int id = user1.Id;

            userRepo.Remove(user1);

            Users user2 = userRepo.FindById(id);

            Assert.AreEqual(null, user2);
        }
 public Task <SolicitudVacante> FindById(int id) =>
 repository.FindById(id);