我的分页控件算法,稍有点简单

public  ActionResult Index( string  count, string  current, string  css)
        {
            ViewData[
" Message " =   " Welcome to ASP.NET MVC! " ;

            
int  allCount  =   int .Parse(count); // 总条数
             int  currentPage  =   int .Parse(current); // 当前页
            StringBuilder pager  =   new  StringBuilder();

            
int  page  =  (allCount  %  pageSize  >   0 ?  allCount  /  pageSize  +   1  : allCount  /  pageSize;
            
if  (page  >   1 )
            {
                pager.Append(
" <label><a href='/'>首页</a></label> " );
                
                
if  (page  >=   2   &&  page  <=   10 )
                {
                    
for  ( int  i  =   1 ; i  <=  page; i ++ )
                    {
                        
if  (i  ==  currentPage)
                            pager.Append(
" <label class=' "   +  css  +   " '><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                        
else
                            pager.Append(
" <label><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                    }
                }
                
else
                {
                    
if  (currentPage  <=   4 )
                    {
                        
for  ( int  i  =   1 ; i  <=   4 ; i ++ )
                        {
                            
if  (i  ==  currentPage)
                                pager.Append(
" <label class=' "   +  css  +   " '><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                            
else
                                pager.Append(
" <label><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                        }
                        pager.Append(
" <label>...</label> " );
                    }
                    
else   if  (currentPage  >   3   &&  currentPage  <  page - 3  )
                    {
                        
for  ( int  i  =   1 ; i  <=   2 ; i ++ )
                        {
                                pager.Append(
" <label><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                        }
                        pager.Append(
" <label>...</label> " );

                        pager.Append(
" <label><a href='/'>第 "   +  (currentPage  -   1 ).ToString()  +   " 页</a></label> " );
                        pager.Append(
" <label class=' "   +  css  +   " '><a href='/'>第 "   +  currentPage.ToString()  +   " 页</a></label> " );
                        pager.Append(
" <label><a href='/'>第 "   +  (currentPage  +   1 ).ToString()  +   " 页</a></label> " );

                        pager.Append(
" <label>...</label> " );
                        
for  ( int  i  =  page  -   1 ; i  <=  page; i ++ )
                        {
                                pager.Append(
" <label><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                        }
                    }
                    
else
                    {
                        pager.Append(
" <label>...</label> " );
                        
for  ( int  i  =  page  -   3 ; i  <=  page; i ++ )
                        {
                            
if  (i  ==  currentPage)
                                pager.Append(
" <label class=' "   +  css  +   " '><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                            
else
                                pager.Append(
" <label><a href='/'>第 "   +  i.ToString()  +   " 页</a></label> " );
                        }
                    }
                }
                pager.Append(
" <label><a href='/'>末页</a></label> " );
            }
            ViewData[
" all " =  count;

            ViewData[
" current " =  current;
            ViewData[
" pageString " = MvcHtmlString.Create( pager.ToString());
            
return  View();
        }

转载于:https://www.cnblogs.com/bober/archive/2011/08/02/2125234.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值