易截截图软件、单文件、免安装、纯绿色、仅160KB

asp.net 分页存储过程+分页类+分页控件


分页存储过程如下代码Pages.sql:
CREATE PROCEDURE Pages
@tblName varchar(255), -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='', -- 排序的字段名
@pageSize int = 10, -- 页尺寸
@pageIndex int = 1, -- 页码
@doCount bit = 0, -- 返回记录总数, 非 0 值则返回
@orderType bit = 0, -- 设置排序类型, 非 0 值则降序
@strWhere varchar(1500) = '', -- 查询条件 (注意: 不要加 where)
@primaryKey varchar(60)
AS
declare @strSQL varchar(5000) -- 主语句
declare @strOrder varchar(400) -- 排序类型
declare @strTmpFld varchar(10)
set @strTmpFld = 'TmpFld' --临时字段名!!!重要!!!
if @doCount != 0
begin
if @strWhere !=''
set @strSQL = 'select count(*) as Total from '+ @tblName +' where '+ @strWhere
else
set @strSQL = 'select count(*) as Total from '+ @tblName +''
end
--以上代码的意思是如果@doCount传递过来的不是0,就执行总数统计。以下的所有代码都
--是@doCount为0的情况
else
begin
if @orderType != 0
set @strOrder = ' order by '+ @fldName +' desc ' --如果@orderType不是0,就执行降序,这句很重要!
else
set @strOrder = ' order by '+ @fldName +' asc '
if @pageIndex = 1
begin
if @strWhere != ''
set @strSQL = 'select top ' + str(@pageSize) + ' ' + @strGetFields + ' from ' + @tblName +' where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@pageSize) + ' ' + @strGetFields + ' from ' + @tblName +' '+ @strOrder
--如果是第一页就执行以上代码,这样会加快执行速度
end
else
begin
--以下代码赋予了@strSQL以真正执行的SQL代码
if @strWhere = ''
set @strSQL = 'select top ' + str(@pageSize) + ' ' + @strGetFields + ' from ' + @tblName + ' where ' + @primaryKey + ' not in (' + 'select top ' + str((@pageIndex-1)*@pageSize) + ' ' + @primaryKey + ' from '+ @tblName + ' ' + @strOrder + ')'+ @strOrder
else
set @strSQL = 'select top ' + str(@pageSize) + ' ' + @strGetFields + ' from '


相关文档:

浅谈ASP.net安全编程

在Web编程过程中,存在着很多安全隐患。比如在以前的ASP版本中,Cookie为访问者和编程者都提供了方便,并没有提供加密的功能。打开IE浏览器,选择“工具”菜单里的“Internet选项”,然后在弹出的对话框里单击“设置”按钮,选择“查看文件”按钮,在弹出的窗口中,就会显示硬盘里 ......

ASP.NET跨页面传值技巧

1. 使用QueryString变量
  QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。下面是一个例子:
a.aspx的C#代码
private void Button1_Click(object se ......

ASP.net:Literal控件用法

刚开始学.NET的朋友可能不清楚Literal和Label到底有什么区别,其实它们也只有一个区别,就是在转换成客户端Html代码后,Label就成了<span></span>,而Literal则是什么标记都不带,下面进入正题:
       昨天做一个网站的视频新闻管理,首先我要在页面里添加一个播放器,如下:
1<OB ......

asp.net面试答案补充1

 被面试得有一部分题诗主观的,视自身情况吧,下面是我不会的了,查一查记下了。
1、net常用类库,网络的类库:
      (1) ASP.NET自动导入的:
     System
     System.Collections
     System.Text
 &nb ......

asp.net面试答案补充2 aspx页面以及全局事件

aspx页面中事件的执行顺序
1.asp.net的请求过程,以及对应的处理请求的dll
客户的请求页面由aspnet_isapi.dll这个动态连接库来处理,把请求的aspx文件发送给CLR进行编译执行,然后把Html流返回给浏览器
2.页面事件(按照事件的执行顺序排列)
Page_Init:初始化值或连接
Page_Load:主要使用IsPostBack,该事件主要执行 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号