//public AdDto ChangePostalCode(string adId, string code) //{ // Ad ad = this.adReadRepository.GetById(new AdId(adId)); // ad.PostalCode = this.postalCodeAdapter.GetByCode(code); // //TO-Do Save in repository & Configure Mapper interface & provider // return new AdDto() // { // Id = ad.Id.Id, // Title = ad.Title, // Amount = ad.Price.Amount, // IsoCode = ad.Price.Currency.Iso.ToString(), // PostalCode = ad.PostalCode.Code, // PostalCodeName = ad.PostalCode.Name // }; //} public async Task <bool> ChangePriceAndSaveAd(AdId adId, int amount, string isoCode) { Ad adToChangePriceAndSave = this.adQueryRepository.GetById(adId); Domain.Core.Model.Currency.IsoCode isoCodeEnum = (Domain.Core.Model.Currency.IsoCode)Enum.Parse(typeof(Domain.Core.Model.Currency.IsoCode), isoCode, true); adToChangePriceAndSave.ChangePrice(amount, isoCodeEnum); if (await this.adCommandRepository.Update(adToChangePriceAndSave)) { adToChangePriceAndSave.DispatchEvents(); } return(true); }