public async Task Edit(int id, EditContentPageInput input, string imageFolderPath) { var contentPageEntity = await Get(id); var sources = input.Content.GetBase64Sources(); var extension = ""; byte[] imageBytes = null; string imageName = ""; foreach (var src in sources) { extension = src.GetExtensionFromBase64ImageSource(); imageBytes = Convert.FromBase64String(src.GetValueFromBase64ImageSource()); imageName = $"{Guid.NewGuid()}.{extension}"; Upload.ByteArrayToFile($"{imageFolderPath}/{imageName}", imageBytes); input.Content = input.Content.Replace(src, $"{_configuration.GetSection("Domain").Value}/{ContentPage.IMAGE_PATH}/{imageName}"); } contentPageEntity.Title = input.Title; contentPageEntity.Content = input.Content; contentPageEntity.SeoUrl = input.SeoUrl; contentPageEntity.MetaTitle = input.MetaTitle; contentPageEntity.MetaDescription = input.MetaDescription; await _contentPageRepo.SaveChangesAsync(); }
public async Task <IActionResult> Edit(int id, [FromBody] EditContentPageInput input) { var absolutePath = Path.Combine(_webHostEnvironment.WebRootPath, ContentPage.IMAGE_PATH); await _contentPageService.Edit(id, input, absolutePath); return(Ok()); }