public async Task DownloadImageAsync(AnnouceViewModel model, string photoUrl) { try { string filename = model.ImageTempId + "_" + Guid.NewGuid() + Path.GetExtension(photoUrl); using WebClient client = new WebClient(); await client.DownloadFileTaskAsync(new Uri(photoUrl), Path.Combine(tempImagesFolder, filename)); } catch (Exception ex) { _logger.LogError(ex, "DownloadImageAsync"); } }
public async Task <IActionResult> AddNew(AnnouceViewModel model) { string[] files = _watermarkService.GetFiles(model); foreach (var fileDirectory in files) { await _watermarkService.WatermarkImageAndUploadToAzure(fileDirectory); } _watermarkService.ClearTempFolder(files); return(Redirect("/")); }
public async Task <List <ArtPhoto> > ImportImagesToAzure(HtmlDocument productHtml, Guid artId) { try { AnnouceViewModel model = new AnnouceViewModel { ImageTempId = Guid.NewGuid() }; var photosUrl = GetProductPhotosUrl(productHtml); var artPhotoList = new List <ArtPhoto>(); foreach (var photoUrl in photosUrl) { await _watermarkService.DownloadImageAsync(model, photoUrl); } string[] files = _watermarkService.GetFiles(model); foreach (var fileDirectory in files) { var url = await _watermarkService.WatermarkImageAndUploadToAzure(fileDirectory); var artPhoto = new ArtPhoto { Url = url, ArtId = artId }; artPhotoList.Add(artPhoto); } _watermarkService.ClearTempFolder(files); return(artPhotoList); } catch (Exception ex) { _logger.Error(ex, "ImportImagesToAzure error"); return(new List <ArtPhoto>()); } }
public string[] GetFiles(AnnouceViewModel model) { return(Directory.GetFiles(tempImagesFolder, model.ImageTempId + "*")); }