linq 排序问题 我用linq做gridview的分页,用skip()和take(),点了第一页之后就没有页码这是第一页点了页码就成下面这样了页码没了是怎么回事?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 还有,断点调试下,看到底是数据的问题,还是linq语句的问题,或者是分页控件代码的问题。你自己的系统,好调试,我们没有办法调试,只能看代码,很痛苦的 //绑定 public void Bind() { DataDataContext uidc = new DataDataContext("Data Source=1- 51ad74db663f4;Initial Catalog=LinqWeb;User ID=sa;pwd=''"); GridView1.DataSource = from c in uidc.user_info select new { 编号 = c.userId, 姓名 = c.userName, 年龄 = c.userAge, 性别 = c.userSex }; GridView1.DataBind(); } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { DataDataContext uidc = new DataDataContext("Data Source=1-51ad74db663f4;Initial Catalog=LinqWeb;User ID=sa;pwd=''"); GridView1.DataSource = (from c in uidc.user_info select new { 编号 = c.userId, 姓名 = c.userName, 年龄 = c.userAge, 性别 = c.userSex }).Skip(3 * (this.GridView1.PageIndex + 1)).Take(3).ToList(); GridView1.DataBind(); //Response.Write(this.GridView1.PageIndex); } 你只给GridView1三条数据,他再怎么分页。 GridView1分页功能是自带的,默认三条数据为一页。你给它绑定15条数据,它就会自动分成5页。但是你只给它三条数据,它只够一页,用不着分,所以没有页码 用linq绑定的gridview数据直接分不了页,所以就用这个(Skip(3 * (this.GridView1.PageIndex + 1)).Take(3).ToList()),点到是可以点了,就是点了就没有页码了, 没有你这样分页的要么利用GridView自动分页功能,用dataset接收linq返回的数据,再绑定到GridView要么自己写分页方法和控件。。 利用GridView自带分页,这样写就可以了protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e){ GridView1.PageIndex = e.NewPageIndex; this.Bind();} 今天第三问浏览器兼容性问题 请看这个代码为什么只能添加成功一条? DataList嵌套 问题 一个工具类引用不到页面对象Page怎么办 问下web.config文件的读取效率问题 ASP.NET读写TXT文件问题 最后10分,大家帮忙! 求一条sql语句,求出 间断id号. 请问mms协议的默认端口是多少? net做网页的问题 图片滚动问题 Web分页控件 PagerF Aspnet
看到底是数据的问题,
还是linq语句的问题,
或者是分页控件代码的问题。你自己的系统,好调试,
我们没有办法调试,
只能看代码,
很痛苦的
public void Bind()
{
DataDataContext uidc = new DataDataContext("Data Source=1- 51ad74db663f4;Initial Catalog=LinqWeb;User ID=sa;pwd=''");
GridView1.DataSource = from c in uidc.user_info select new { 编号 = c.userId, 姓名 = c.userName, 年龄 = c.userAge, 性别 = c.userSex };
GridView1.DataBind();
} protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
DataDataContext uidc = new DataDataContext("Data Source=1-51ad74db663f4;Initial Catalog=LinqWeb;User ID=sa;pwd=''");
GridView1.DataSource = (from c in uidc.user_info select new { 编号 = c.userId, 姓名 = c.userName, 年龄 = c.userAge, 性别 = c.userSex }).Skip(3 * (this.GridView1.PageIndex + 1)).Take(3).ToList();
GridView1.DataBind();
//Response.Write(this.GridView1.PageIndex);
}
你只给GridView1三条数据,他再怎么分页。
你给它绑定15条数据,它就会自动分成5页。
但是你只给它三条数据,它只够一页,用不着分,所以没有页码
用dataset接收linq返回的数据,再绑定到GridView要么自己写分页方法和控件。。
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
this.Bind();
}