示例#1
0
        public async Task <ActionResult <EmployeeAPIModel> > UpdateCustomer(int id, EmployeeAPIModel employee)
        {
            var validator        = new EmployeeValidator(0);
            var validationResult = await validator.ValidateAsync(employee);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors));
            }

            var employeeToUpdate = await _employeeService.GetEmployeeById(id);

            if (employeeToUpdate == null)
            {
                return(NotFound());
            }

            var employeeModel = _mapper.Map <EmployeeAPIModel, Employees>(employee);

            await _employeeService.UpdateEmployees(employeeToUpdate, employeeModel);

            employeeModel = await _employeeService.GetEmployeeById(id);

            var employeeAPIModel = _mapper.Map <Employees, EmployeeAPIModel>(employeeModel);

            return(Ok(employeeAPIModel));
        }
示例#2
0
        public async Task <ActionResult <EmployeeAPIModel> > CreateEmployee(EmployeeAPIModel employee)
        {
            var validator        = new EmployeeValidator(1);
            var validationResult = await validator.ValidateAsync(employee);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors));
            }

            var employeeModel = _mapper.Map <EmployeeAPIModel, Employees>(employee);
            await _employeeService.CreateEmployees(employeeModel);

            return(Ok(employee));
        }
示例#3
0
        public async Task Validator_Perf()
        {
            var ev = new EmployeeValidator();
            var v  = new Employee {
                FirstName = "Speedy", LastName = "Fasti", Birthdate = new DateTime(1999, 10, 22), Salary = 51000m, WorkingYears = 20
            };

            var sw = System.Diagnostics.Stopwatch.StartNew();

            for (int i = 0; i < 100000; i++)
            {
                var r = await ev.ValidateAsync(v).ConfigureAwait(false);

                Assert.IsFalse(r.HasErrors);
            }

            sw.Stop();
            System.Console.WriteLine($"100K validations - elapsed: {sw.ElapsedMilliseconds} (ms)");
        }