Exemplo n.º 1
0
        public IActionResult UpdateSkillName(int id, [FromBody] PortfolioPathViewModel portfolioVM)
        {
            try
            {
                if (!_context.Portfolio.Any(p => p.PortfolioId == id))
                {
                    return(Json(BadRequest("Id doesn't exist.")));
                }
                if (!_context.Category.Any(c => c.CategoryId == portfolioVM.CategoryId))
                {
                    return(Json(BadRequest("CategoryId doesn't exist.")));
                }


                var portfolio = _context.Portfolio?.FirstOrDefault(p => p.PortfolioId == id);


                portfolioVM.PortfolioId = id;
                _map.Map(portfolioVM, portfolio);
                _context.Update(portfolio);
                _context.SaveChanges();

                return(Json(new NoContentResult()));
            }
            catch (Exception ex)
            {
                return(Json(BadRequest(ex)));
            }
        }
Exemplo n.º 2
0
        public IActionResult Patch(int id, [FromBody] JsonPatchDocument <PortfolioPathViewModel> portfolioPatch)
        {
            if (!_context.Portfolio.Any(p => p.PortfolioId == id))
            {
                return(Json(BadRequest("Id doesn't exist.")));
            }

            var portfolio = _context.Portfolio.FirstOrDefault(p => p.PortfolioId == id);

            //Use Automapper to map that to our DTO object.
            PortfolioPathViewModel portfolioDTO = _map.Map <PortfolioPathViewModel>(portfolio);

            portfolioPatch.ApplyTo(portfolioDTO); //Apply the patch to that DTO.

            _map.Map(portfolioDTO, portfolio);    //Use automapper to map the DTO back on top of the database object.

            _context.Portfolio.Update(portfolio); //Update our portfolio in the database.
            _context.SaveChanges();

            return(Json(portfolioDTO));
        }