public async Task <bool> Handle( Command request, CancellationToken cancellationToken ) { var course = _academicDbContext.Courses.Find(request.Id); if (course == null) { throw new AppException($"The course {request.Id} does not exists"); } _academicDbContext.Courses.Remove(course); return(await _academicDbContext.SaveChangesAsync() > 0); }
public async Task <Course> Handle( Command request, CancellationToken cancellationToken ) { string code = request.Code; Course existingCourse = await _academicDbContext .Courses .AsNoTracking() .SingleOrDefaultAsync(c => c.Code == code); if (existingCourse != null) { throw new AppException($"El curso con código {code} ya se encuentra registrado"); } Course course = new Course(request.Code, request.Name, request.CourseGroupId); _academicDbContext.Courses.Add(course); int count = await _academicDbContext.SaveChangesAsync(); return(course); }