public async Task <object> Get(int id, int page = 1, string bcategory = "技术博文", string key = "")
        {
            int intTotalCount = 6;
            int total;
            int totalCount = 1;
            List <herbalifeArticle> blogArticleList = new List <herbalifeArticle>();

            if (string.IsNullOrEmpty(key) || string.IsNullOrWhiteSpace(key))
            {
                key = "";
            }

            using (MiniProfiler.Current.Step("开始加载数据:"))
            {
                try
                {
                    if (_redisCacheManager.Get <object>("Redis.herbalife") != null)
                    {
                        MiniProfiler.Current.Step("从Redis服务器中加载数据:");
                        blogArticleList = _redisCacheManager.Get <List <herbalifeArticle> >("Redis.herbalife");
                    }
                    else
                    {
                        MiniProfiler.Current.Step("从MSSQL服务器中加载数据:");
                        blogArticleList = await _blogArticleServices.Query(a => a.bcategory == bcategory && a.IsDeleted == false);

                        _redisCacheManager.Set("Redis.herbalife", blogArticleList, TimeSpan.FromHours(2));
                    }
                }
                catch (Exception e)
                {
                    MiniProfiler.Current.CustomTiming("Errors:", "Redis服务未启用,请开启该服务,并且请注意端口号,本项目使用的的6319,而且我的是没有设置密码。" + e.Message);
                    blogArticleList = await _blogArticleServices.Query(a => a.bcategory == bcategory && a.IsDeleted == false);
                }
            }

            blogArticleList = blogArticleList.Where(d => (d.btitle != null && d.btitle.Contains(key)) || (d.bcontent != null && d.bcontent.Contains(key))).ToList();

            total      = blogArticleList.Count();
            totalCount = blogArticleList.Count() / intTotalCount;

            using (MiniProfiler.Current.Step("获取成功后,开始处理最终数据"))
            {
                blogArticleList = blogArticleList.OrderByDescending(d => d.bID).Skip((page - 1) * intTotalCount).Take(intTotalCount).ToList();

                foreach (var item in blogArticleList)
                {
                    if (!string.IsNullOrEmpty(item.bcontent))
                    {
                        item.bRemark = (HtmlHelper.ReplaceHtmlTag(item.bcontent)).Length >= 200 ? (HtmlHelper.ReplaceHtmlTag(item.bcontent)).Substring(0, 200) : (HtmlHelper.ReplaceHtmlTag(item.bcontent));
                        int totalLength = 500;
                        if (item.bcontent.Length > totalLength)
                        {
                            item.bcontent = item.bcontent.Substring(0, totalLength);
                        }
                    }
                }
            }

            return(Ok(new
            {
                success = true,
                page,
                total,
                pageCount = totalCount,
                data = blogArticleList
            }));
        }