public static string SimplePager(this HtmlHelper htmlHelper, int pagesize, int recordnum, int articleid,int pageindex)
        {
              
                StringBuilder sb = new StringBuilder();
                if (pagesize != 0)
                {
                    if (pageindex > 1)
                    {
                        sb.Append(string.Format("<li class=\"li_UD\"><a href=\"http://my.aqioo.com/{0}-{1}-view.html\">上一页</a></li>", pageindex - 1, articleid));
                    }
                    int pagecount = recordnum / pagesize;
                    if (pagecount <= 1)
                    {
                        //不用分页
                        return "";
                    }
                    if (recordnum % pagesize != 0)
                    {
                        pagecount += 1;
                    }
                    if (pagecount <= 9)
                    {
                        for (int i = 0; i < pagecount; i++)
                        {
                            if (i + 1 == pageindex)
                            {
                                sb.Append(string.Format("<li class='li_On'><a style=\"color:Red\" >{0}</a></li>", i + 1));
                            }
                            else
                            {
                                sb.Append(string.Format("<li><a  href=\"http://my.aqioo.com/{0}-{1}-view.html\">{0}</a></li>", i + 1, articleid));
                            }
                        }
                    }
                    else
                    {
                        for (int i = 0; i < 9; i++)
                        {
                            if (pageindex <= 4)
                            {
                                if (i + 1 == pageindex)
                                {
                                    sb.Append(string.Format("<li class='li_On'><a style=\"color:Red\" >{0}</a></li>", i + 1));
                                }
                                else
                                {
                                    sb.Append(string.Format("<li><a href=\"http://my.aqioo.com/{0}-{1}-view.html\">{0}</a></li>", i + 1, articleid));
                                }
                            }
                            else if (pageindex + 4 >= pagecount)
                            {
                                int temp = 9 - (pagecount - pageindex);
                                if (pageindex - temp + i + 1 == pageindex)
                                {
                                    sb.Append(string.Format("<li class='li_On'><a style=\"color:Red\" >{0}</a></li>", pageindex - temp + i + 1));
                                }
                                else
                                {
                                    sb.Append(string.Format("<li><a href=\"http://my.aqioo.com/{0}-{1}-view.html\">{0}</a></li>", pageindex - temp + i + 1, articleid));
                                }
                            }
                            else
                            {
                                if (pageindex - 4 + i == pageindex)
                                {
                                    sb.Append(string.Format("<li class='li_On'><a style=\"color:Red\">{0}</a></li>", pageindex - 4 + i));
                                }
                                else
                                {
                                    sb.Append(string.Format("<li><a  href=\"http://my.aqioo.com/{0}-{1}-view.html\">{0}</a></li>", pageindex - 4 + i, articleid));

                                }
                            }
                        }
                    }
                    if (pageindex < pagecount)
                    {
                        sb.Append(string.Format("<li class=\"li_UD\"><a href=\"http://my.aqioo.com/{0}-{1}-view.html\">下一页</a></li>", pageindex + 1, articleid));
                    }
                }
                return sb.ToString();
            }
View Code

页面上调用

<%if (Convert.ToInt32(ViewData["pageCount"].ToString())>1)
  {%>
  <div class="PageNav">
      <%=Html.SimplePager(1, Convert.ToInt32(ViewData["pageCount"].ToString()), Model.Item.A_id, Convert.ToInt32(ViewData["pageIndex"].ToString()))%>
      </div>
 <% } %>
View Code

Controller

 /// <summary>
        /// 文章详情页
        /// </summary>
        /// <param name="id">文章id</param>
        /// <returns></returns>
        public AqiooViewModelItem<Articles> ArticleDetail(int id, int pageIndex)
        {
            int pageCount = 1;
            string contents = string.Empty;
            Articles article = m_ArticleService.GetArticleByArticleID(id);

            //每页的内容
            contents = Utils.ArticlePagination(System.Web.HttpContext.Current.Server.HtmlDecode(article.A_remark), out pageCount, pageIndex);
            contents = Utils.ReplaceContent(contents, "show");
            article.A_remark = contents;
            ViewData["pageCount"] = pageCount;
            ViewData["pageIndex"] = pageIndex;
            return new AqiooViewModelItem<Articles>(article);
        }
View Code

 

posted on 2014-10-13 16:34  随心所意  阅读(72)  评论(0)    收藏  举报