存储过程
 /*
/*
 名称:spAll_ReturnRows
 名称:spAll_ReturnRows
 输入:
 输入:
 输出:
 输出:
 调用:
 调用:
 EXEC spAll_ReturnRows 'SELECT  * FROM 表名', 页号, 返回记录数, '主键', '排序字段'
  EXEC spAll_ReturnRows 'SELECT  * FROM 表名', 页号, 返回记录数, '主键', '排序字段'
 spAll_ReturnRows 'SELECT  * FROM all_Categories',2,10,'[ID]','[ID]'
  spAll_ReturnRows 'SELECT  * FROM all_Categories',2,10,'[ID]','[ID]'
 说明:[百万级]通用存储过程.分页存储过程..返回指定返回条数、指定页数的记录
 说明:[百万级]通用存储过程.分页存储过程..返回指定返回条数、指定页数的记录
 作者:Dili J.F. Senders
 作者:Dili J.F. Senders
 邮件:diliatwellknow.net
  邮件:diliatwellknow.net
 网站:http://www.wellknow.net
  网站:http://www.wellknow.net
 更新:20040610
  更新:20040610
 支持:http://bbs.wellknow.net
  支持:http://bbs.wellknow.net
 版权:转述时请注明来源:用思维创造未来的Wellknow.net
  版权:转述时请注明来源:用思维创造未来的Wellknow.net
 */
*/

 CREATE PROCEDURE dbo.spAll_ReturnRows
CREATE PROCEDURE dbo.spAll_ReturnRows
 (
(
 @SQL nVARCHAR(4000),
 @SQL nVARCHAR(4000),
 @Page int,
 @Page int,
 @RecsPerPage int,
 @RecsPerPage int,
 @ID VARCHAR(255),
 @ID VARCHAR(255),
 @Sort VARCHAR(255)
 @Sort VARCHAR(255)
 )
)
 AS
AS

 DECLARE @Str nVARCHAR(4000)
DECLARE @Str nVARCHAR(4000)

 SET @Str='SELECT   TOP '+CAST(@RecsPerPage AS VARCHAR(20))+' * FROM ('+@SQL+') T WHERE T.'+@ID+' NOT IN
SET @Str='SELECT   TOP '+CAST(@RecsPerPage AS VARCHAR(20))+' * FROM ('+@SQL+') T WHERE T.'+@ID+' NOT IN 
 (SELECT   TOP '+CAST((@RecsPerPage*(@Page-1)) AS VARCHAR(20))+' '+@ID+' FROM ('+@SQL+') T9 ORDER BY '+@Sort+') ORDER BY '+@Sort
(SELECT   TOP '+CAST((@RecsPerPage*(@Page-1)) AS VARCHAR(20))+' '+@ID+' FROM ('+@SQL+') T9 ORDER BY '+@Sort+') ORDER BY '+@Sort

 PRINT @Str
PRINT @Str

 EXEC sp_ExecuteSql @Str
EXEC sp_ExecuteSql @Str
 GO
分页
GO
分页
 /*
/* 名称:spAll_ReturnRows
 名称:spAll_ReturnRows 输入:
 输入: 输出:
 输出: 调用:
 调用: EXEC spAll_ReturnRows 'SELECT  * FROM 表名', 页号, 返回记录数, '主键', '排序字段'
  EXEC spAll_ReturnRows 'SELECT  * FROM 表名', 页号, 返回记录数, '主键', '排序字段' spAll_ReturnRows 'SELECT  * FROM all_Categories',2,10,'[ID]','[ID]'
  spAll_ReturnRows 'SELECT  * FROM all_Categories',2,10,'[ID]','[ID]' 说明:[百万级]通用存储过程.分页存储过程..返回指定返回条数、指定页数的记录
 说明:[百万级]通用存储过程.分页存储过程..返回指定返回条数、指定页数的记录 作者:Dili J.F. Senders
 作者:Dili J.F. Senders 邮件:diliatwellknow.net
  邮件:diliatwellknow.net 网站:http://www.wellknow.net
  网站:http://www.wellknow.net 更新:20040610
  更新:20040610 支持:http://bbs.wellknow.net
  支持:http://bbs.wellknow.net 版权:转述时请注明来源:用思维创造未来的Wellknow.net
  版权:转述时请注明来源:用思维创造未来的Wellknow.net */
*/
 CREATE PROCEDURE dbo.spAll_ReturnRows
CREATE PROCEDURE dbo.spAll_ReturnRows (
( @SQL nVARCHAR(4000),
 @SQL nVARCHAR(4000), @Page int,
 @Page int, @RecsPerPage int,
 @RecsPerPage int, @ID VARCHAR(255),
 @ID VARCHAR(255), @Sort VARCHAR(255)
 @Sort VARCHAR(255) )
) AS
AS
 DECLARE @Str nVARCHAR(4000)
DECLARE @Str nVARCHAR(4000)
 SET @Str='SELECT   TOP '+CAST(@RecsPerPage AS VARCHAR(20))+' * FROM ('+@SQL+') T WHERE T.'+@ID+' NOT IN
SET @Str='SELECT   TOP '+CAST(@RecsPerPage AS VARCHAR(20))+' * FROM ('+@SQL+') T WHERE T.'+@ID+' NOT IN  (SELECT   TOP '+CAST((@RecsPerPage*(@Page-1)) AS VARCHAR(20))+' '+@ID+' FROM ('+@SQL+') T9 ORDER BY '+@Sort+') ORDER BY '+@Sort
(SELECT   TOP '+CAST((@RecsPerPage*(@Page-1)) AS VARCHAR(20))+' '+@ID+' FROM ('+@SQL+') T9 ORDER BY '+@Sort+') ORDER BY '+@Sort
 PRINT @Str
PRINT @Str
 EXEC sp_ExecuteSql @Str
EXEC sp_ExecuteSql @Str GO
GO 1 ///   <summary>
 ///   <summary>   
2 ///   返回用于分页的HTML文本
  ///   返回用于分页的HTML文本   
3 ///   </summary>
  ///   </summary>   
4 ///   <param   name="recordCount">记录总条数</param>
  ///   <param   name="recordCount">记录总条数</param>   
5 ///   <param   name="pageSize">每页大小</param>
  ///   <param   name="pageSize">每页大小</param>   
6 ///   <param   name="currPage">当前页</param>
  ///   <param   name="currPage">当前页</param>   
7 ///   <returns>返回HTML文本</returns>
  ///   <returns>返回HTML文本</returns>   
8 public   static   string   GetPaperHtml(int   recordCount,int   pageSize,int   currPage)
  public   static   string   GetPaperHtml(int   recordCount,int   pageSize,int   currPage)   
9 {
  {   
10 System.Text.StringBuilder   result=new   System.Text.StringBuilder("");
  System.Text.StringBuilder   result=new   System.Text.StringBuilder("");   
11 int   pageOfBlock=10; //每块可以放几页
  int   pageOfBlock=10; //每块可以放几页   
12 int   maxPage=(recordCount+pageSize-1)/pageSize; //一共分多少页
  int   maxPage=(recordCount+pageSize-1)/pageSize; //一共分多少页   
13 int   maxBlock=(maxPage+pageOfBlock-1)/pageOfBlock; //共有多少块
  int   maxBlock=(maxPage+pageOfBlock-1)/pageOfBlock; //共有多少块   
14 int   currBlock=(currPage+pageOfBlock-1)/pageOfBlock; //当前是第几块
  int   currBlock=(currPage+pageOfBlock-1)/pageOfBlock; //当前是第几块   
15 int   nextPage=currPage+1; //下一页的页数
  int   nextPage=currPage+1; //下一页的页数   
16 int   previousPage=currPage-1; //前一页的页数
  int   previousPage=currPage-1; //前一页的页数   
17 int   nextBlockFirst=currBlock*pageOfBlock+1; //下一块的第一页
  int   nextBlockFirst=currBlock*pageOfBlock+1; //下一块的第一页   
18 int   previousBlockLast=(currBlock-1)*pageOfBlock; //上一块的第一页
  int   previousBlockLast=(currBlock-1)*pageOfBlock; //上一块的第一页   
19 //如果是第一页,则上一页和最前一页的链接无效
  //如果是第一页,则上一页和最前一页的链接无效   
20 if   (currPage>1)
  if   (currPage>1)   
21 {
  {   
22 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page=1";
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page=1";   
23 result.Append("<a   title='首页'   href='"+href+"'><font   face='webdings'>9</font></a>  ");
  result.Append("<a   title='首页'   href='"+href+"'><font   face='webdings'>9</font></a>  ");   
24 href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(--pageIndex);
  href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(--pageIndex);   
25 result.Append("<a   title='上一页'   href='"+href+"'><font   face='webdings'>3</font></a>  ");
  result.Append("<a   title='上一页'   href='"+href+"'><font   face='webdings'>3</font></a>  ");   
26 }
  }   
27 else
  else   
28 {
  {   
29 result.Append("<a   disabled='true'><font   face='webdings'>9</font></a>  ");
  result.Append("<a   disabled='true'><font   face='webdings'>9</font></a>  ");   
30 result.Append("<a   disabled='true'><font   face='webdings'>3</font></a>  ");
  result.Append("<a   disabled='true'><font   face='webdings'>3</font></a>  ");   
31 }
  }   
32 //如果是不是一块,则加上一个返回上一块的链接
  //如果是不是一块,则加上一个返回上一块的链接   
33 if   (currBlock>1)
  if   (currBlock>1)   
34 {
  {   
35 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+previousBlockLast.ToString();
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+previousBlockLast.ToString();   
36 result.Append("<a   title='前十页'   href='"+href+"'>
  result.Append("<a   title='前十页'   href='"+href+"'> </a> ");
</a> ");   
37 }
  }   
38 //循环每一页
  //循环每一页   
39 if   (maxPage!=0)
  if   (maxPage!=0)   
40 {
  {   
41 //如果下一块的第一页大于最大页,则这一块的结束页索引为最大页,否则为下一块的第一页减1.
  //如果下一块的第一页大于最大页,则这一块的结束页索引为最大页,否则为下一块的第一页减1.   
42 int   endPage   =   (nextBlockFirst   >   maxPage)   ?   maxPage   :   nextBlockFirst   -   1;
  int   endPage   =   (nextBlockFirst   >   maxPage)   ?   maxPage   :   nextBlockFirst   -   1;   
43 for   (int   i=previousBlockLast+1;i<=endPage;i++)
  for   (int   i=previousBlockLast+1;i<=endPage;i++)   
44 {
  {   
45 if   (i==currPage)
  if   (i==currPage)   
46 {
  {   
47 result.Append("<font   color='Red'>-<b>"   +   i.ToString()   +   "</b>-</font> ");
  result.Append("<font   color='Red'>-<b>"   +   i.ToString()   +   "</b>-</font> ");   
48 }
  }   
49 else
  else   
50 {
  {   
51 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+i.ToString();
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+i.ToString();   
52 result.Append("<a   title='第"   +   i.ToString()   +"页'   href='"+href+"'>[ "   +   i.ToString()   +   " ]</a> ");
  result.Append("<a   title='第"   +   i.ToString()   +"页'   href='"+href+"'>[ "   +   i.ToString()   +   " ]</a> ");   
53 }
  }   
54 }
  }   
55 }
  }   
56 //如果不是最后一块,则加上一个指向下一块的链接
  //如果不是最后一块,则加上一个指向下一块的链接   
57 if   (currBlock<maxBlock)
  if   (currBlock<maxBlock)   
58 {
  {   
59 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+nextBlockFirst.ToString();
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+nextBlockFirst.ToString();   
60 result.Append("<a   title='后十页'   href='"+href+"'>
  result.Append("<a   title='后十页'   href='"+href+"'> </a>  ");
</a>  ");   
61 }
  }   
62 //如果是最后一页或者记录数为零,则下一页及最后一页的链接无效
  //如果是最后一页或者记录数为零,则下一页及最后一页的链接无效   
63 if   (currPage!=maxPage   &&   recordCount!=0)
  if   (currPage!=maxPage   &&   recordCount!=0)   
64 {
  {   
65 pageIndex++;
  pageIndex++;   
66 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);   
67 result.Append("<a   title='下一页'   href='"+href+"'><font   face='webdings'>4</font></a>  ");
  result.Append("<a   title='下一页'   href='"+href+"'><font   face='webdings'>4</font></a>  ");   
68 int   count=0;
  int   count=0;   
69 if(int.Parse(PLDs.Tables[0].Rows[0][7].ToString())%10==0)
  if(int.Parse(PLDs.Tables[0].Rows[0][7].ToString())%10==0)   
70 {
  {   
71 count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10;
  count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10;   
72 }
  }   
73 else
  else   
74 {
  {   
75 count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10+1;
  count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10+1;   
76 }
  }   
77 pageIndex=count;
  pageIndex=count;   
78 href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);
  href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);   
79 result.Append("<a   title='末页'   href='"+href+"'><font   face='webdings'>:</font></a>  ");
  result.Append("<a   title='末页'   href='"+href+"'><font   face='webdings'>:</font></a>  ");   
80 }
  }   
81 else
  else   
82 {
  {   
83 result.Append("<a   disabled='true'><font   face='webdings'>4</font></a>  ");
  result.Append("<a   disabled='true'><font   face='webdings'>4</font></a>  ");   
84 result.Append("<a   disabled='true'><font   face='webdings'>:</font></a>   ");
  result.Append("<a   disabled='true'><font   face='webdings'>:</font></a>   ");   
85 }
  }   
86 return   result.ToString();
  return   result.ToString();   
87 }
  }
 ///   <summary>
 ///   <summary>   2
 ///   返回用于分页的HTML文本
  ///   返回用于分页的HTML文本   3
 ///   </summary>
  ///   </summary>   4
 ///   <param   name="recordCount">记录总条数</param>
  ///   <param   name="recordCount">记录总条数</param>   5
 ///   <param   name="pageSize">每页大小</param>
  ///   <param   name="pageSize">每页大小</param>   6
 ///   <param   name="currPage">当前页</param>
  ///   <param   name="currPage">当前页</param>   7
 ///   <returns>返回HTML文本</returns>
  ///   <returns>返回HTML文本</returns>   8
 public   static   string   GetPaperHtml(int   recordCount,int   pageSize,int   currPage)
  public   static   string   GetPaperHtml(int   recordCount,int   pageSize,int   currPage)   9
 {
  {   10
 System.Text.StringBuilder   result=new   System.Text.StringBuilder("");
  System.Text.StringBuilder   result=new   System.Text.StringBuilder("");   11
 int   pageOfBlock=10; //每块可以放几页
  int   pageOfBlock=10; //每块可以放几页   12
 int   maxPage=(recordCount+pageSize-1)/pageSize; //一共分多少页
  int   maxPage=(recordCount+pageSize-1)/pageSize; //一共分多少页   13
 int   maxBlock=(maxPage+pageOfBlock-1)/pageOfBlock; //共有多少块
  int   maxBlock=(maxPage+pageOfBlock-1)/pageOfBlock; //共有多少块   14
 int   currBlock=(currPage+pageOfBlock-1)/pageOfBlock; //当前是第几块
  int   currBlock=(currPage+pageOfBlock-1)/pageOfBlock; //当前是第几块   15
 int   nextPage=currPage+1; //下一页的页数
  int   nextPage=currPage+1; //下一页的页数   16
 int   previousPage=currPage-1; //前一页的页数
  int   previousPage=currPage-1; //前一页的页数   17
 int   nextBlockFirst=currBlock*pageOfBlock+1; //下一块的第一页
  int   nextBlockFirst=currBlock*pageOfBlock+1; //下一块的第一页   18
 int   previousBlockLast=(currBlock-1)*pageOfBlock; //上一块的第一页
  int   previousBlockLast=(currBlock-1)*pageOfBlock; //上一块的第一页   19
 //如果是第一页,则上一页和最前一页的链接无效
  //如果是第一页,则上一页和最前一页的链接无效   20
 if   (currPage>1)
  if   (currPage>1)   21
 {
  {   22
 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page=1";
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page=1";   23
 result.Append("<a   title='首页'   href='"+href+"'><font   face='webdings'>9</font></a>  ");
  result.Append("<a   title='首页'   href='"+href+"'><font   face='webdings'>9</font></a>  ");   24
 href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(--pageIndex);
  href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(--pageIndex);   25
 result.Append("<a   title='上一页'   href='"+href+"'><font   face='webdings'>3</font></a>  ");
  result.Append("<a   title='上一页'   href='"+href+"'><font   face='webdings'>3</font></a>  ");   26
 }
  }   27
 else
  else   28
 {
  {   29
 result.Append("<a   disabled='true'><font   face='webdings'>9</font></a>  ");
  result.Append("<a   disabled='true'><font   face='webdings'>9</font></a>  ");   30
 result.Append("<a   disabled='true'><font   face='webdings'>3</font></a>  ");
  result.Append("<a   disabled='true'><font   face='webdings'>3</font></a>  ");   31
 }
  }   32
 //如果是不是一块,则加上一个返回上一块的链接
  //如果是不是一块,则加上一个返回上一块的链接   33
 if   (currBlock>1)
  if   (currBlock>1)   34
 {
  {   35
 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+previousBlockLast.ToString();
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+previousBlockLast.ToString();   36
 result.Append("<a   title='前十页'   href='"+href+"'>
  result.Append("<a   title='前十页'   href='"+href+"'> </a> ");
</a> ");   37
 }
  }   38
 //循环每一页
  //循环每一页   39
 if   (maxPage!=0)
  if   (maxPage!=0)   40
 {
  {   41
 //如果下一块的第一页大于最大页,则这一块的结束页索引为最大页,否则为下一块的第一页减1.
  //如果下一块的第一页大于最大页,则这一块的结束页索引为最大页,否则为下一块的第一页减1.   42
 int   endPage   =   (nextBlockFirst   >   maxPage)   ?   maxPage   :   nextBlockFirst   -   1;
  int   endPage   =   (nextBlockFirst   >   maxPage)   ?   maxPage   :   nextBlockFirst   -   1;   43
 for   (int   i=previousBlockLast+1;i<=endPage;i++)
  for   (int   i=previousBlockLast+1;i<=endPage;i++)   44
 {
  {   45
 if   (i==currPage)
  if   (i==currPage)   46
 {
  {   47
 result.Append("<font   color='Red'>-<b>"   +   i.ToString()   +   "</b>-</font> ");
  result.Append("<font   color='Red'>-<b>"   +   i.ToString()   +   "</b>-</font> ");   48
 }
  }   49
 else
  else   50
 {
  {   51
 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+i.ToString();
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+i.ToString();   52
 result.Append("<a   title='第"   +   i.ToString()   +"页'   href='"+href+"'>[ "   +   i.ToString()   +   " ]</a> ");
  result.Append("<a   title='第"   +   i.ToString()   +"页'   href='"+href+"'>[ "   +   i.ToString()   +   " ]</a> ");   53
 }
  }   54
 }
  }   55
 }
  }   56
 //如果不是最后一块,则加上一个指向下一块的链接
  //如果不是最后一块,则加上一个指向下一块的链接   57
 if   (currBlock<maxBlock)
  if   (currBlock<maxBlock)   58
 {
  {   59
 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+nextBlockFirst.ToString();
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+nextBlockFirst.ToString();   60
 result.Append("<a   title='后十页'   href='"+href+"'>
  result.Append("<a   title='后十页'   href='"+href+"'> </a>  ");
</a>  ");   61
 }
  }   62
 //如果是最后一页或者记录数为零,则下一页及最后一页的链接无效
  //如果是最后一页或者记录数为零,则下一页及最后一页的链接无效   63
 if   (currPage!=maxPage   &&   recordCount!=0)
  if   (currPage!=maxPage   &&   recordCount!=0)   64
 {
  {   65
 pageIndex++;
  pageIndex++;   66
 string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);
  string   href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);   67
 result.Append("<a   title='下一页'   href='"+href+"'><font   face='webdings'>4</font></a>  ");
  result.Append("<a   title='下一页'   href='"+href+"'><font   face='webdings'>4</font></a>  ");   68
 int   count=0;
  int   count=0;   69
 if(int.Parse(PLDs.Tables[0].Rows[0][7].ToString())%10==0)
  if(int.Parse(PLDs.Tables[0].Rows[0][7].ToString())%10==0)   70
 {
  {   71
 count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10;
  count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10;   72
 }
  }   73
 else
  else   74
 {
  {   75
 count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10+1;
  count=int.Parse(PLDs.Tables[0].Rows[0][7].ToString())/10+1;   76
 }
  }   77
 pageIndex=count;
  pageIndex=count;   78
 href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);
  href="SIndex.aspx?TextSearch=\"+escape('"+TextSearch+"')+\"&DropSearch="+ASearch+"&page="+(pageIndex);   79
 result.Append("<a   title='末页'   href='"+href+"'><font   face='webdings'>:</font></a>  ");
  result.Append("<a   title='末页'   href='"+href+"'><font   face='webdings'>:</font></a>  ");   80
 }
  }   81
 else
  else   82
 {
  {   83
 result.Append("<a   disabled='true'><font   face='webdings'>4</font></a>  ");
  result.Append("<a   disabled='true'><font   face='webdings'>4</font></a>  ");   84
 result.Append("<a   disabled='true'><font   face='webdings'>:</font></a>   ");
  result.Append("<a   disabled='true'><font   face='webdings'>:</font></a>   ");   85
 }
  }   86
 return   result.ToString();
  return   result.ToString();   87
 }
  } 
                    
                
 
   
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号