I have a requirement of filtering the data from the SPList (ex:20000 SPListItems) and I bind it to the radgrid. I want to get first 200 and next 200 of every page click in the radgrid.
This is my code:
DataTable dt=new DataTable();
SPQuery query = new SPQuery();
query.ViewAttributes = "Scope=\"SiteCollection\"";
query.Query = "<Where><Eq><FieldRef Name='Title'><Value Type='Text'>s</Value></Eq></Where>";
query.ViewFields = "<FieldRef Name='Title'>";
query.ViewFieldsOnly = true;
query.QueryThrottleMode = SPQueryThrottleOption.Strict;
splist.EnableThrottling = false;
query.RowLimit = 2000;
do
{
SPListItemCollection myItems = splist.GetItems(query);
if (dt == null || dt.Rows.Count <= 0)
dt = myItems.GetDataTable();
else
dt.Merge(myItems.GetDataTable());
query.ListItemCollectionPosition = myItems.ListItemCollectionPosition;
}
while (query.ListItemCollectionPosition != null);
How do I paginate the results?