希望懂得的朋友能看看,我不知道他这句的
DataSet ds = bind(); //这里是数据源
这句是什么意思,是如何设定数据源的?
代码地址:http://topic.csdn.net/u/20090704/11/2f655cf9-185d-4221-bbfb-5e24c573439d.html?15835
顺便问问,有没有其他方法让Datalist分页或者有没有控件。
aspnetpager这个控件是外部下载的吗?
DataSet ds = bind(); //这里是数据源
这句是什么意思,是如何设定数据源的?
代码地址:http://topic.csdn.net/u/20090704/11/2f655cf9-185d-4221-bbfb-5e24c573439d.html?15835
顺便问问,有没有其他方法让Datalist分页或者有没有控件。
aspnetpager这个控件是外部下载的吗?
这句是什么意思,是如何设定数据源的?
相当于是数据库的查询方法,返回的是 DataSet
public void Pagess()
{
PagedDataSource pds = new PagedDataSource();
pds.DataSource = (from d in dc.Shippers select d).ToList();
pds.AllowPaging = true;
pds.PageSize = 5;
int CurrentPage = 0;
if (Request.QueryString["Page"] != null)
{
CurrentPage = Convert.ToInt32(Request.QueryString["Page"]);
}
else
{
CurrentPage = 1;
}
pds.CurrentPageIndex = CurrentPage - 1;
lbPage.Text = "当前是第:" + CurrentPage.ToString() + "页";//lbPage为label控件
if (!pds.IsFirstPage)
{
Hfirst.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurrentPage - 1);//Hfirst为HyperLink控件
}
else if (!pds.IsLastPage)
{
Hlast.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurrentPage + 1);//Hlast为HyperLink控件
}
Repeater1.DataSource = pds;//Repeater1为数据控件
Repeater1.DataBind();
}
分页用存储过程啊,下面是一个通用的分页存储过程,可以参考一下:
CREATE PROCEDURE pr_PageInation
(
@intStartIndex int,
@intPageSize int,
@sysTableName sysname,
@varSortExpression varchar(100),
@varCotitionExepression varchar(max)
)
AS
BEGIN
DECLARE @varSql varchar(max);
DECLARE @intFrontTotal int;
SET @intFrontTotal=@intStartIndex+@intPageSize;
SET @varSql='
SELECT TOP '+CAST(@intPageSize AS VARCHAR)+' * FROM
(
SELECT TOP '+CAST(@intFrontTotal-1 AS VARCHAR)+' *
FROM '+ @sysTableName + @varCotitionExepression
+' ORDER BY '+@varSortExpression+'ASC'
) AS '+ @sysTableName+'PageInation
ORDER BY '+@varSortExpression+' DESC'
EXECUTE(@varSql);END