ASP-----分页功能的实现

WEB 分页功能的实现
后端C#代码部分:
// 建立Linq 数据库的连接
private MYDateDataContext context = new MYDateDataContext();

// 设定每页几条数据
private const int PAGESIZE = 3;

//获取总的页数
public int GetPageNo()
{
int PageNo =(int) Math.Ceiling(context.Car.Count()/PAGESIZE*1.0);
return PageNo;
}

//获取指定页信息的方法
public List<Car> GetPageCar( int PageNo)
{
//skip(每页固定行数*要求第几页-1).take(几行数据)
var mimi = context.Car.Skip(PAGESIZE * PageNo - 1).Take(PAGESIZE);
return mimi.ToList();
}

protected void Page_Load(object sender, EventArgs e)
{
int nowpage = 1;
if( Request["pageno"]!=null)
{
nowpage = Convert.ToInt32(Request["pageno"]);
}
List<Car> list = GetPageCar(nowpage);

// 给repeater 绑定数据源
Repeater1.DataSource = list;// 获取数据源
Repeater1.DataBind();// 绑定数据源

// 给hyup hydown 绑定数据

// 获取列表分页的最大值;
int Pageno = GetPageNo();

// 如果当前页为最大值 向上的键不可用
if (Pageno == nowpage)
{
hydown.Enabled = false;
}
else
{
hydown.Enabled = true;
hydown.NavigateUrl = "web1.aspx?pageno=" + (nowpage + 1).ToString();
}
if (nowpage == 1)
{
hyup.Enabled = false;
}
else
{

hyup.Enabled = true;
hyup.NavigateUrl = "web1.aspx?pageno=" + (nowpage - 1).ToString();
}

//给首页 绑定数据
hyfirst.NavigateUrl = "web1.aspx?pageno=1";
// 给尾页绑定数据
hyend.NavigateUrl = "web1.aspx?pageno=" + GetPageNo().ToString();

}

//跳转功能实现
protected void Button1_Click(object sender, EventArgs e)
{
int lenth = TextBox1.Text.Trim().Length;

// 将页面输入的值读取出来
if (lenth!=0 )
{
int Gono = Convert.ToInt32(TextBox1.Text);


if (Gono < 1)
{
// 如果要跳转的页面小于实际页数 跳转到本页
Response.Redirect("web1.aspx");// 跳转的指定页

}
else if (Gono > GetPageNo())
{
Response.Redirect("web1.aspx?pageno=" + GetPageNo());
}
else
{
Response.Redirect("web1.aspx?pageno=" + Gono);


}
}
else
Response.Redirect("web1.aspx");


}

前段设计部分:
注意点:HyperLink 超链接
HyperLink 控件用于创建超链接;

转载于:https://www.cnblogs.com/woniu-net/p/4715442.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值