public async Task <IActionResult> ImportImage(IFormFile uploadingFile) { if (uploadingFile == null) { return(BadRequest()); } var imageCreationInfo = new ImageCreationInfo { Name = uploadingFile.FileName, UserId = (await this.userService.GetUserByLogin(User.Identity.Name)).Id }; Image image; try { image = await this.imageService.ImportImage(imageCreationInfo, uploadingFile.OpenReadStream()); } catch (Exception ex) { return(BadRequest(ex.Message)); } return(Ok(image)); }
public async Task <Image> ImportImage(ImageCreationInfo imageCreationInfo, Stream uploadingFileStream) { var image = new Image { Name = imageCreationInfo.Name, CreationTime = DateTime.Now, UserId = imageCreationInfo.UserId, Filename = Path.Combine(this.imageFileRepository.DirectoryInfo.FullName, imageCreationInfo.Name) }; //Needs transactions. await this.dbImageRepository.AddImage(image); await this.imageFileRepository.Save(image.Name, uploadingFileStream); image.Base64 = await GetImageBase64(image); return(image); }