Exemplo n.º 1
0
        public async Task <IActionResult> CreateUploadAsync(IFormCollection data, IFormFile formFile)
        {
            try
            {
                formFile.OpenReadStream();

                using var memoryStream = new MemoryStream();
                await formFile.CopyToAsync(memoryStream);

                var image = new Bitmap(memoryStream);

                var post = new UploadPost(image, data[Constants.CategoryKey], data[Constants.UsernameKey], data[Constants.IPAddressKey],
                                          DateTime.Now, data[Constants.NameKey], data[Constants.DescriptionKey],
                                          Int32.Parse(data[Constants.RatingKey]), Double.Parse(data[Constants.PriceKey]), data[Constants.PriceUnitKey], data[Constants.ExtensionKey], Int32.Parse(data[Constants.ImageSizeKey]));

                var result = await _uploadManager.CreateUploadAsync(post, Constants.NoValueInt).ConfigureAwait(false);

                return(Ok(new SuccessResponse()
                {
                    Message = result.Message, ExceptionOccurred = result.ExceptionOccurred, Success = result.Data
                }));
            }
            catch
            {
                // Return generic server error.
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }