예제 #1
0
        public async Task <ActionResult> AddListingAsync([FromBody] CreateListingCommand command)
        {
            if (ModelState.IsValid)
            {
                await pipelineService.HandleCommandAsync(command);

                return(Ok());
            }
            else
            {
                return(BadRequest());
            }
        }
예제 #2
0
        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));
        }
예제 #3
0
        /// <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);