예제 #1
0
 public IActionResult Save(Blog blog)
 {
     if (CurrentUser != null && blog != null)
     {
         if (blog.PK == null)
         {
             blog.CreateTime = DateTime.Now;
             blog.Author     = CurrentUser;
             dbContext.Add(blog);
         }
         else
         {
             blog.LastUpdate = DateTime.Now;
             dbContext.Update(blog);
         }
         dbContext.SaveChanges();
         BlogDetailModel blogDetail = new BlogDetailModel(blog)
         {
             CanManage = true
         };
         return(View("Detail", blogDetail));
     }
     else
     {
         return(RedirectToAction("Index", "Home"));
     }
 }
예제 #2
0
        private async Task GetPreBlogInfo(BlogDetailModel blogModel)
        {
            var blogId  = Convert.ToInt64(blogModel.Id);
            var preBlog = await this.Repository.QueryEntities(b => b.Id < blogId && b.UserId == blogModel.UserId).OrderByDescending(b => b.Id).FirstOrDefaultAsync();

            if (preBlog != null)
            {
                blogModel.PreId    = preBlog.Id.ToString();
                blogModel.PreTitle = preBlog.Title;
            }
        }
예제 #3
0
        private async Task GetNextBlogInfo(BlogDetailModel blogModel)
        {
            var blogId   = Convert.ToInt64(blogModel.Id);
            var nextBlog = await this.Repository.QueryEntities(b => b.Id > blogId && b.UserId == blogModel.UserId).OrderBy(b => b.Id).FirstOrDefaultAsync();

            if (nextBlog != null)
            {
                blogModel.NextId    = nextBlog.Id.ToString();
                blogModel.NextTitle = nextBlog.Title;
            }
        }
예제 #4
0
        public IActionResult Detail(string id)
        {
            var blog = dbContext.Blogs.Where(o => o.PK.ToString() == id).Include(o => o.Author).Include(o => o.Comments).FirstOrDefault();

            if (blog != null)
            {
                BlogDetailModel blogDetail = new BlogDetailModel(blog)
                {
                    CanManage = blog.Author.Name == HttpContext.Request.Cookies["blogdemousername"]
                };
                return(View(blogDetail));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
예제 #5
0
        // GET: Blog/Details/5
        public IActionResult Details(int id)
        {
            var blogPost = _blogService.GetById(id);

            var model = new BlogDetailModel()
            {
                Id            = blogPost.Id,
                Title         = blogPost.Title,
                P1BlogContent = blogPost.P1BlogContent,
                P1ImageUrl    = blogPost.P1ImageUrl,
                P2BlogContent = blogPost.P2BlogContent,
                P2ImageUrl    = blogPost.P2ImageUrl,
                P3BlogContent = blogPost.P3BlogContent,
                P3ImageUrl    = blogPost.P3ImageUrl,
            };



            return(View(model));
        }