您的位置:首页 > 编程语言 > ASP

ASP.net 2.0 自定义控件的开发之数据分页 第一章

2006-11-09 17:54 441 查看
 本文将向大家介绍使用ASP.net 2.0 开发自定义的数据分页控件
数据分页的好处 1、减少网络流量 2、提高运行效率
在大数据量时,数据分页是一个必须面对的现实,没有哪个客户愿意花上几分钟或更多的时间来等待。数据分页也有多种方式比如内存分页 SQL Server 存储过程分页等,这里将向大家介绍的是 SQL Server 存储过程分页方式,并结合ASP.net 2.0 的来编写一个通用的数据分页控件。
本文使用的存储过程来自 http://www.codeproject.com/aspnet/PagingLarge.asp 在这里感谢作
4000
者,他为我们提供了多种存储过程分页方法的速度对比。
现在启动你的Visual Studio 2005 然后新建一个类库项目取名为SqlPaging 如下图



 
然后添加两个类文件取名为AssemblyInfo及SqlPaging如下图



 
然后打开本工程的属性对话框将程序集名称设置SqlPaging 将根命名空间设置为DRMSystem 将应用程序类型设置为 Web 控件库如下图



 
打开 AssemblyInfo类输入如下代码
[align=left]Imports System[/align]
[align=left]Imports System.Web.UI[/align]
<Assembly: TagPrefix("DRMSystem.DataLayer", "drmsp")>
'定义在网页中用于标识自定义控件的标记前缀。
 
打开 SqlPaging 类输入如下代码(导入程序所用到的命名空间。)
[align=left]Imports System[/align]
[align=left]Imports System.Collections.Generic[/align]
[align=left]Imports System.ComponentModel[/align]
[align=left]Imports System.Text[/align]
[align=left]Imports System.Data.SqlClient[/align]
[align=left]Imports System.Web[/align]
[align=left]Imports System.Web.UI[/align]
[align=left]Imports System.Web.UI.WebControls[/align]
[align=left]Imports System.Security.Permissions[/align]
[align=left] [/align]
[align=left]'定义转到按钮的风格[/align]
[align=left]Public Enum StyleGoTo[/align]
[align=left]    LinkButton = 1[/align]
[align=left]    ImageButton = 2[/align]
End Enum
 
输入如下代码添加一个命名空间 DataLayer 在添加一个 名为 SqlPaging 的类。这里我们只讲解ToolboxData它表示当从 Microsoft Visual Studio 等工具中的工具箱拖动自定义控件时为它生成的默认标记。
[align=left]Namespace DataLayer[/align]
[align=left]    <AspNetHostingPermission(SecurityAction.Demand, _[/align]
[align=left]    Level:=AspNetHostingPermissionLevel.Minimal), _[/align]
[align=left]    AspNetHostingPermission(SecurityAction.InheritanceDemand, _[/align]
[align=left]    Level:=AspNetHostingPermissionLevel.Minimal), _[/align]
[align=left]    DefaultProperty("PageInfo"), _[/align]
[align=left]    ToolboxData("<{0}:SqlPaging runat=""server""> </{0}:SqlPaging>")> _[/align]
[align=left]    Public Class SqlPaging[/align]
        Inherits CompositeControl
     End Class
End Namespace

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐