Exemplo n.º 1
0
 public IActionResult DeleteImage([FromBody] DeleteImageRequest request)
 {
     try
     {
         _uploadsService.Delete(request.Path);
         return(Ok());
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         throw;
     }
 }
Exemplo n.º 2
0
        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());
        }