我没有使用Entity框架,我创建了自定义数据访问层。 我想做自定义过滤和自定义分页。
grid.mvc支持自定义分页和自定义过滤吗? 我检查了http://gridmvc.codeplex.com/documentation文档,但找不到如何操作。
我试过了
EnablePaging = true;
Pager.PageSize = 10;
但它会对已经分页的数据进行分页。
如果有人这样做了,请建议如何做到。
提前致谢。
答案 0 :(得分:0)
我还没有使用grid.mvc,但您可以使用LINQ对.NET中几乎任何序列进行分页和过滤。
var items = new List<string>();
// Add 10 items for testing
for (int i = 0; i < 10; i++)
{
items.Add("item" + i.ToString());
}
var pagedAndFilteredItems = items
.Where(x => x != "item0") // Filter the first item from the sequence
.Skip(3) // Number of items to skip over
.Take(3) // Number of items to put into the current view.
.ToList(); // Executes the query
// pagedAndFilteredItems now contains
// "item4"
// "item5"
// "item6"
// Which corresponds to the second page if your page size is 3
然后,您可以一次只向grid.mvc提供1页。您可能必须构建自己的下一个和后一个链接,但如果您从外部源提取数据,则这比将整个数据集提供给网格要灵活得多。
当然,另一种选择是在LINQ中进行过滤,如Where子句所示,然后让grid.mvc进行分页。