コード例 #1
0
        public async Task <IActionResult> PutAsync(int id, [FromBody] SaveNoteResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var note         = mapper.Map <SaveNoteResource, Note>(resource);
            var noteResponse = await noteService.UpdateAsync(id, note);

            var noteResource = mapper.Map <Note, NoteResource>(noteResponse.Task);
            var result       = noteResponse.GetResponseResult(noteResource);

            return(Ok(result));
        }
コード例 #2
0
        public async Task <IActionResult> CreateNote([FromBody] SaveNoteResource noteResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var note = _mapper.Map <SaveNoteResource, Note>(noteResource);

            note.CreatedDate = DateTime.Now;

            await _repository.Add(note);

            await _unitOfWork.CompleteAsync();

            note = await _repository.GetNote(note.Id);

            var result = _mapper.Map <Note, NoteResource>(note);

            return(CreatedAtRoute(RouteData, result));
        }
コード例 #3
0
        public async Task <IActionResult> UpdateNote(int id, SaveNoteResource noteResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var note = await _repository.GetNote(id);

            if (note == null)
            {
                return(BadRequest($"Note with Id = {id} is not found"));
            }

            _mapper.Map <SaveNoteResource, Note>(noteResource, note);
            _repository.Update(note);
            await _unitOfWork.CompleteAsync();

            note = await _repository.GetNote(note.Id);

            var result = _mapper.Map <Note, NoteResource>(note);

            return(Ok(result));
        }