LINQ permette di implementare facilmente funzionalità di paginazione dei dati mediante i metodi Take e Skip:
DataContext context = new DataContext("...stringa di connessione a db SQL Server...");
int pageSize = 20,
pageCount = (from c in context.GetTable<Customer>() select c).Count() / pageSize;
for (int pageIndex = 0; pageIndex < pageCount; pageIndex++)
{
var customers = (from c in context.GetTable<Customer>() orderby c.CompanyName ascending select c).Skip(pageIndex * pageSize).Take(pageSize);
foreach (Customer c in customers)
{
Console.WriteLine(string.Format("{0}", c.CompanyName));
}
Console.WriteLine("Press
Console.ReadLine();
}