public IActionResult Post([FromBody] Advert advert)
 {
     using (var scope = new TransactionScope())
     {
         _advertRepository.AddAdvert(advert);
         scope.Complete();
         return(CreatedAtAction(nameof(Get), new { id = advert.Id, advert }));
     }
 }
예제 #2
0
        public AdvertDto AddAdvert(AddAdvertDto advertToAddDto, string userId)
        {
            var user = _userRepository.GetUserById(userId);

            if (user == null)
            {
                return(null);
            }
            var advertToAdd = _mapper.Map <AddAdvertDto, Advert>(advertToAddDto);

            advertToAdd.DateOfCreation         = DateTime.UtcNow;
            advertToAdd.DateOfLastModification = DateTime.UtcNow.Date;
            advertToAdd.Owner    = user;
            advertToAdd.OwnerId  = userId;
            advertToAdd.Category = _categoryRepository.GetCategory(advertToAdd.CategoryId);
            var addedAdvert = _advertRepository.AddAdvert(advertToAdd);
            var advertDto   = _mapper.Map <Advert, AdvertDto>(addedAdvert);

            return(advertDto);
        }