Ejemplo n.º 1
0
        public async Task <Result> DeleteUser(EntityDto <long> input)
        {
            var user = await _userManager.FindByIdAsync(input.Id.ToString());

            if (user != null)
            {
                await _studentService.DeleteStudentByUserId(new EntityDto <long> {
                    Id = user.Id
                });

                await _teacherService.DeleteTeacherByUserId(new EntityDto <long> {
                    Id = user.Id
                });

                var result = await _userManager.DeleteAsync(user);

                if (result.Succeeded)
                {
                    return(Result.Success());
                }
                var errors = new List <ErrorResult>();
                foreach (var error in result.Errors)
                {
                    errors.Add(new ErrorResult(error.Description));
                }
                return(Result.Failed(errors));
            }
            return(ErrorNotFoundUser(input.Id));
        }