public IActionResult BlogDetail(int id) { Blog blog = blogService.Get(x => x.id == id && x.IsActive); SessionUser session = userSessionService.Get("LoginUser"); string color = "#6c757d"; if (EntityBase.IsNotNull(blog) && EntityBase.IsNotNull(session)) { Like like = likeService.Get(x => x.IsActive == true && x.Userid == session.id && x.Blogid == blog.id); if (EntityBase.IsNotNull(like)) { color = like.IsLike ? "#9494FF" : "#FF8b60"; } BlogViewCounterModel blogViewCounterModel = blogViewCounterCookieService.Get($"BlogView-{blog.id}-{session.id}"); if (blogViewCounterModel == null) { blog.ViewCount++; blogService.Update(blog); blogService.Save(); blogViewCounterCookieService.Set($"BlogView-{blog.id}-{session.id}", new BlogViewCounterModel() { Blogid = blog.id, Userid = session.id, IsLogin = true }, 60 * 2); } } else { BlogViewCounterModel blogViewCounterModel = blogViewCounterCookieService.Get($"BlogView-{blog.id}-0"); if (blogViewCounterModel == null) { blog.ViewCount++; blogService.Update(blog); blogService.Save(); blogViewCounterCookieService.Set($"BlogView-{blog.id}-0", new BlogViewCounterModel() { Blogid = blog.id, IsLogin = false }, 60 * 2); } } ViewBag.PointColor = color; return(View(blog)); }
public void Set(string key, BlogViewCounterModel value, int?expireTime) { _httpContextAccessor.HttpContext.Response.Cookies.Set(key, value, expireTime); }