コード例 #1
0
        public async Task <ActionResult> UpdateArtist(int id, ArtistToSaveResource artistToUpdate)
        {
            try
            {
                // Validation of input Data
                var validation       = new ArtistToSaveResourceValidator();
                var validationResult = await validation.ValidateAsync(artistToUpdate);

                if (!validationResult.IsValid)
                {
                    return(BadRequest(validationResult.Errors));
                }

                // Verify existing artist
                var artistExist = await _artistService.GetArtistById(id);

                if (artistExist == null)
                {
                    return(NotFound("Artist not found"));
                }

                // Mapping
                var artistUpdate = _mapperService.Map <ArtistToSaveResource, Artist>(artistToUpdate);

                // Update
                await _artistService.UpdateArtist(artistExist, artistUpdate);

                return(Ok("The artist is updated"));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #2
0
        //[Authorize]
        public async Task <ActionResult <Artist> > CreateArtist(ArtistToSaveResource artistToSave)
        {
            try
            {
                // Validation of input Data
                var validation       = new ArtistToSaveResourceValidator();
                var validationResult = await validation.ValidateAsync(artistToSave);

                if (!validationResult.IsValid)
                {
                    return(BadRequest(validationResult.Errors));
                }

                // Mapping
                var artist = _mapperService.Map <ArtistToSaveResource, Artist>(artistToSave);

                // Creation
                var artistCreated = await _artistService.CreateArtist(artist);

                // Mapping
                var artistResource = _mapperService.Map <Artist, ArtistResource>(artistCreated);

                return(Ok(artistResource));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }