public static string Save(Base64ImgFile base64ImgFile) { try { var fileName = base64ImgFile.FileName; var fileBase64 = base64ImgFile.Base64Code; var imgFolder = base64ImgFile.FolderName; var matchGroups = Regex.Match(fileBase64, @"data:image/(?<type>.+?),(?<data>.+)").Groups; var base64Data = matchGroups["data"].Value; var binData = Convert.FromBase64String(base64Data); var folderName = Path.Combine(imagesFolder, imgFolder); System.IO.Directory.CreateDirectory(folderName); var pathToSave = Path.Combine(folderName, fileName); System.IO.File.WriteAllBytes(pathToSave, binData); var dbPath = Path.Combine(folderName, fileName); //create path for front return(dbPath.Replace(rootFolder, string.Empty)); } catch (Exception ex) { throw; } }
public async Task <IActionResult> AttachImageFile(Base64ImgFile base64ImgFile) { string path = SaveImageToServerFolder.Save(base64ImgFile); this.logger.LogInformation($"Img added to server by path: {path}"); return(this.Ok(new { message = path })); }