예제 #1
0
 public HomeSideBarViewModel BuildHomeSideBarViewModel()
 {
     if (!_cache.TryGetValue("cache_HomeSideBar", out HomeSideBarViewModel homeSideBar))
     {
         HomeSideBarViewModel homeSideBarViewModel = new HomeSideBarViewModel();
         homeSideBarViewModel.VisitorLogCount = _iSBearVisitorLogService.GetTotalVisitorCount();
         homeSideBarViewModel.HotArticle      = _blogArticleService.GetArticleListPageByViewOrderBy(10, 0);
         var vv = _blogArticleService.GetAritcleTypeAndCount();
         var homeSideBarViewModelArticleTypes = vv.GroupBy(x => x.BlogArticleTypeId).Select(g => new HomeSideBarViewModelArticleType
         {
             BlogArticleType = _blogArticleTypeService.Get(g.Key),
             Count           = g.Count()
         });
         homeSideBarViewModel.ArticleType = homeSideBarViewModelArticleTypes.ToList();
         _cache.Set("cache_HomeSideBar", homeSideBarViewModel, new MemoryCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromMinutes(5)).SetAbsoluteExpiration(TimeSpan.FromMinutes(20)));
         homeSideBar = homeSideBarViewModel;
     }
     return(homeSideBar);
 }
예제 #2
0
 public IViewComponentResult Invoke(HomeSideBarViewModel vm)
 {
     return(View(vm));
 }