public IActionResult DeleteImage([FromBody] DeleteImageRequest request) { try { _uploadsService.Delete(request.Path); return(Ok()); } catch (Exception e) { Console.WriteLine(e); throw; } }
public async Task <IActionResult> Create([FromBody] BlogPostViewModel post) { var objDb = _mapper.Map <BlogPostDto>(post); try { var email = User.FindFirst(ClaimTypes.NameIdentifier)?.Value; var user = await _unitOfWork.ApplicationUsers .GetFirstOrDefault(u => u.Email == email); objDb.AuthorId = user.Id; objDb.Slug = post.Title.GenerateSlug(); objDb.PublishDate = DateTime.UtcNow; objDb.Content = _uploadsService.ParseAndSaveImages(objDb.Slug, post.Content); SetPropertiesFromModel(objDb, post); await _unitOfWork.BlogPosts.Add(objDb); await _unitOfWork.Save(); if (post.Mailed && !post.Scratch) { await SendNotificationForSubscribers(post); } } catch (Exception e) { _logger.LogError(e, $"Cannot create blog post: {e.Message}"); _uploadsService.Delete(objDb.ImageUrl); _uploadsService.DeleteBlogImages(objDb.Slug); return(Problem()); } return(Ok()); }