public async Task <ActionResult> Put(Guid id, [FromBody] CourseCreateEditDto dto) { if (id != dto.Id) { return(BadRequest()); } await _service.UpdateAsync(dto.ToEntity()); return(Ok()); }
public static Course ToEntity(this CourseCreateEditDto dto) { var courseStudents = dto.Students? .Select(x => new CourseStudent() { StudentId = x.Id }) .ToList(); switch (dto.Type) { case CourseTypeDto.ClassRoom: return(new ClassRoomCourse() { Id = dto.Id, Name = dto.Name, Code = dto.Code, Students = courseStudents ?? new List <CourseStudent>(), PrerequisiteCourseId = dto.PrerequisiteCourseId, Address = dto.Address }); case CourseTypeDto.Online: return(new OnlineCourse() { Id = dto.Id, Name = dto.Name, Code = dto.Code, Students = courseStudents ?? new List <CourseStudent>(), PrerequisiteCourseId = dto.PrerequisiteCourseId, VideoUrl = dto.VideoUrl }); default: return(null); } }
public async Task <ActionResult <CourseDto> > Post([FromBody] CourseCreateEditDto dto) { var created = await _service.CreateAsync(dto.ToEntity()); return(Ok(created.ToDto())); }