Ejemplo n.º 1
0
        public async Task <(string, CreatedBlogResponse)> GetBlogPostByTitle(string title)
        {
            var blog = await _context.Blogs.Where(p => p.Title.ToLower() == title.ToLower()).FirstOrDefaultAsync();

            if (blog == null)
            {
                return("NOTFOUND", null);
            }

            if (blog.Deleted == true)
            {
                return("NOTFOUND", null);
            }

            CreatedBlogResponse response = new CreatedBlogResponse
            {
                Id             = blog.Id,
                Title          = blog.Title,
                Excerpt        = blog.Excerpt,
                Content        = blog.Content,
                CoverImagePath = blog.CoverImagePath,
                Public         = blog.Public,
                Views          = blog.Views,
                Deleted        = blog.Deleted,
                UpdatedAt      = blog.UpdatedAt,
                CreatedAt      = blog.CreatedAt
            };

            return("OK", response);
        }
Ejemplo n.º 2
0
        public async Task <(string, CreatedBlogResponse)> PublishBlog(BlogRequest request)
        {
            try
            {
                var blogPost = _context.Blogs.Where(p => p.Title.ToLower() == request.Title.ToLower()).FirstOrDefaultAsync();

                if (blogPost != null)
                {
                    return("RECORD EXIST", null);
                }

                Blog blog = new Blog
                {
                    Title          = request.Title,
                    Excerpt        = request.Excerpt,
                    Content        = request.Content,
                    CoverImagePath = request.CoverImagePath
                };

                _context.Blogs.Add(blog);

                if (await _context.SaveChangesAsync() > 0)
                {
                    CreatedBlogResponse response = new CreatedBlogResponse
                    {
                        Id             = blog.Id,
                        Title          = blog.Title,
                        Excerpt        = blog.Excerpt,
                        Content        = blog.Content,
                        CoverImagePath = blog.CoverImagePath,
                        Public         = blog.Public,
                        Views          = blog.Views,
                        Deleted        = blog.Deleted,
                        UpdatedAt      = blog.UpdatedAt,
                        CreatedAt      = blog.CreatedAt
                    };

                    return("CREATED", response);
                }

                return("DB ERROR", null);
            }
            catch (Exception ex)
            {
                return("SERVER ERROR", null);
            }
        }