public async Task <ActionResult> AddListingAsync([FromBody] CreateListingCommand command) { if (ModelState.IsValid) { await pipelineService.HandleCommandAsync(command); return(Ok()); } else { return(BadRequest()); } }
public async Task <ActionResult <long> > Create([FromForm] CreateListingCommand command, List <IFormFile> imageFiles) { List <ImageUploadResult> uploadResults = new List <ImageUploadResult>(); foreach (var file in imageFiles) { using (var stream = file.OpenReadStream()) { var uploadParams = new ImageUploadParams { File = new FileDescription(file.Name, stream), }; uploadResults.Add(_cloudinary.Upload(uploadParams)); } } command.ImageUrls = uploadResults.Select(x => x.Url.ToString()).ToList(); return(await Mediator.Send(command)); }
/// <summary> /// Create listing command handler async. /// </summary> /// <param name="listingCommand">Create listing command.</param> /// <param name="listingRepository">Listing repository.</param> public async Task HandleCreateListingAsync(CreateListingCommand listingCommand) { listingCommand.NewListing = mapper.Map <Listing>(listingCommand); await listingRepository.AddListingAsync(listingCommand.NewListing); }
public async Task <IActionResult> PostCreateListingAsync([FromBody] CreateListingCommand createListingCommand) { createListingCommand.Listing.Agent.Id = HttpContext.User.Claims.FirstOrDefault(c => c.Type == "Id")?.Value; return(Ok(new { result = await _mediator.Send(createListingCommand) })); }
public async Task <ActionResult <ListingCreateResponseModel> > Create(CreateListingCommand command) => await this.Send(command);