Beispiel #1
0
        public async Task UpdateAlbumAsync(int albumId, UpdateAlbumDto updatedAlbum)
        {
            var existingAlbum = await _albumRepository.GetAlbumAsync(albumId);

            var album = _mapper.Map(updatedAlbum, existingAlbum);
            await _albumRepository.UpdateAlbumAsync(album);
        }
Beispiel #2
0
        public ActionResult UpdateAlbum(UpdateAlbumDto albumDto)
        {
            var albumFromRepo = _repository.GetAlbum(albumDto.Id);

            if (albumFromRepo == null)
            {
                return(NotFound());
            }
            _mapper.Map(albumDto, albumFromRepo);
            _repository.UpdateAlbum(albumFromRepo);
            _repository.Save();
            return(NoContent());
        }
        public async Task <ActionResult> Put(int albumId, [FromBody] UpdateAlbumDto model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var album = await _albumService.GetAlbumByIdAsync(albumId);

            var authorizationResult = _authorizationService.AuthorizeAsync(User, album, new ResourceOperationRequirement(OperationType.Update)).Result;

            if (!authorizationResult.Succeeded)
            {
                return(Forbid());
            }

            await _albumService.UpdateAlbumAsync(albumId, model);

            return(NoContent());
        }