wf网站前台各类统计
前台Ajax统计文章发布总数和各类访问统计数据,名称自定义【网站数据统计.cshtml】
@Power.VisualizationPartialView(new { Description = "访问量数据统计" }) <div class="tongji"></div> <script type="text/javascript"> $.ajax({ url: '@Url.AjaxPartialUrl()', type: 'post', data: { partialViewName: "访问量数据统计" }, success: function (response) { $(".tongji").html(response.html); } }); </script>
详细统计参数标签【访问量数据统计.cshtml】
@inject SiteTrafficService SiteTrafficService @inject ArticleService ArticleService @inject SiteUniqueVisitorRecordService SiteUniqueVisitorRecordService @inject IPowerCache PowerCache @{ Dictionary<string, int> statistics = new Dictionary<string, int>(); var key = "PowerMainSiteFrontSiteInfoStatistics"; int sitePageView = 0; int siteAllPageView = 0; int siteArticleCount = 0; int siteAllArticleCount = 0; var online = SiteUniqueVisitorRecordService.OnlineCount(); if (!PowerCache.Contains(key)) { var currentDate = DateTime.Now.Date.ToLocalTime(); sitePageView = SiteTrafficService.GetMany(pi => pi.SiteId == SystemConstant.DefaultSiteId && pi.RecordDate == currentDate).Sum(pi => pi.PvCount); siteAllPageView = SiteTrafficService.GetMany(pi => pi.SiteId == SystemConstant.DefaultSiteId).Sum(pi => pi.PvCount); siteArticleCount = ArticleService.Count(n => n.Status == Status.Approve && n.BelongSiteId == SystemConstant.DefaultSiteId && n.PublishTime > currentDate); siteAllArticleCount = ArticleService.Count(n => n.Status == Status.Approve && n.BelongSiteId == SystemConstant.DefaultSiteId); statistics.Add("sitePageView", sitePageView); statistics.Add("siteAllPageView", siteAllPageView); statistics.Add("siteArticleCount", siteArticleCount); statistics.Add("siteAllArticleCount", siteAllArticleCount); }else{ statistics = PowerCache.GetOrCreateWithRedis(key, () => statistics, 10); } } <span>在线人数:@online</span> <span>今日访问量:@statistics["sitePageView"]人次</span> <span>网站访问总量:@statistics["siteAllPageView"]人次</span> <span>全天信息发布:@statistics["siteArticleCount"]条</span> <span>信息总量:@statistics["siteAllArticleCount"]条</span>
前台使用方法:@Power.Partial("网站数据统计")
标签下载: