public async Task <AdvertDto> AddOrEditAdvertAsync(AddOrEditAdvertDto dto) { Advert advert; if (!dto.Id.HasValue) { advert = Mapper.Map <Advert>(dto); advert.AdvertiserId = KutyAppContext.CurrentUser.Id; DbContext.Adverts.Add(advert); } else { advert = await DbContext.Adverts.Include(a => a.Advertiser).SingleOrDefaultAsync(a => a.Id == dto.Id); if (advert == null) { throw new Exception(ExceptionMessages.NotFound); } if (advert.Title != dto.Title) { advert.Title = dto.Title; } if (advert.Description != dto.Description) { advert.Description = dto.Description; } } await DbContext.SaveChangesAsync(); return(Mapper.Map <AdvertDto>(advert)); }
public async Task <ActionResult <AdvertDto> > AddOrEditAdvertisement(AddOrEditAdvertDto dto) => Result(await AdvertManager.AddOrEditAdvertAsync(dto));