您好,我有AllowPaging简单的GridView设置为true,我将数据绑定到它如下:DataGridView允许分页,为什么它获取所有数据?
RulesGridView.DataSource = GetData();
RulesGridView.DataBind();
其中
public static IEnumerable GetData()
{
return from gc in context.Current.SampleTable
where gc.SameField == sameValue
select new
{
example = SampleData
};
}
在SQL SampleTable我有4000行,我的问题是,为什么GridView控件是从这张表中取出所有数据,而不是只有gridview的第一页?我检查了与SQL分析器,这是真的,显示只是第一页在GridView下载所有GridView页面。我可以改变它从SQL只有这么多什么是足以在DataGrid的第一页显示数据,然后如果用户点击第二页,GridView会要求另一个数据?
我认为它返回某种枚举数,它只能告诉需要回溯的数据,某种表达式,而gridView正在采用那些需要的数据,动态数据的工作原理可能与此类似。 – kosnkov 2011-04-14 22:24:21
对,对不起。我错过了IEnumerable返回类型。我的错。你有没有在你的gridview中设置PageIndex和相关的属性?顺便说一句:我要添加一些链接给你我的答案。 – Damb 2011-04-14 22:28:03
好吧,ok pageIndex只是用来显示另一部分数据。我的问题是为什么如果我将Ienumerable函数绑定到GridView,只是第一页获取所有数据,我不明白。 – kosnkov 2011-04-14 22:35:23