コード例 #1
0
        public async Task <TimeTableDto> Handle(UpdateTimeTableCommand request, CancellationToken cancellationToken)
        {
            var timeTableModel = _timeTableDxos.MapUpdateRequesttoTimeTable(request);

            _timeTableRepository.Update(timeTableModel);

            if (await _timeTableRepository.SaveChangesAsync() == 0)
            {
                throw new ApplicationException("Update in database failed");
            }

            await _mediator.Publish(new TimeTableUpdatedEvent(timeTableModel.Id), cancellationToken);

            var timeTableDto = _timeTableDxos.MapTimeTableDto(timeTableModel);

            return(timeTableDto);
        }
コード例 #2
0
        public async Task <ActionResult <TimeTableDto> > PutTimeTable(int id, TimeTableDto timeTableDto)
        {
            try
            {
                var oldTimeTable = await _timeTableRepository.GetTimeTableById(id);

                if (oldTimeTable == null)
                {
                    return(NotFound($"Could not find timetable with id {id}"));
                }

                var newTimeTable = _mapper.Map(timeTableDto, oldTimeTable);
                _timeTableRepository.Update(newTimeTable);
                if (await _timeTableRepository.Save())
                {
                    return(NoContent());
                }
            }
            catch (Exception e)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, $"Database Failure: {e.Message}"));
            }
            return(BadRequest());
        }
コード例 #3
0
 public void UpdateTimeTable(TimeTable timeTable)
 {
     _timeTableRepository.Update(timeTable);
     SaveTimeTable();
 }