public async Task <ActionResult <StudentDTO> > Create([FromBody] StudentDTO studentDto) { if (string.IsNullOrEmpty(studentDto.Name)) { return(BadRequest()); } var @class = await _dbContext.Class.FindAsync(studentDto.ClassId); if (@class == null) { return(NotFound()); } var existingStudent = await _dbContext.Student.FindAsync(studentDto.Id); if (existingStudent != null) { return(Conflict()); } var studentToAdd = studentDto.ToModel(@class); _dbContext.Student.Add(studentToAdd); await _dbContext.SaveChangesAsync(); var updatedStudentDto = studentToAdd.ToDTO(); return(CreatedAtAction(nameof(Get), new { id = studentDto.Id }, updatedStudentDto)); }
public async Task <SchoolResponseModel> Handle(CreateSchoolCommand request, CancellationToken cancellationToken) { // instantiate the model var result = new Models.School { Name = request.Name, City = request.City, State = request.State }; //save to database await _context.School.AddAsync(result); await _context.SaveChangesAsync(); return(new SchoolResponseModel() { SchoolId = result.SchoolId, City = result.City, Name = result.Name, State = result.State }); }