[.net] ¿Cómo uso Linq para paginar una colección genérica?


Answers

Hola, hay una cosa malvada llamada PagedList que recibí cuando miraba un elenco de pantalla de Rob Conery.

http://blog.wekeroad.com/2007/12/10/aspnet-mvc-pagedlistt/

Tiene todas las cosas de Skip y Take incorporadas.

Todo lo que haces es llamar

var query = from item in DB.Table
where item.Field == 1
orderby item.Field2
select item;

PagedList<MyType> pagedList = query.ToPagedList(pageIndex, pageSize);

Espero que ayude ... Lo estoy usando ahora y funciona bien para linq a las entidades. Con Linq a las entidades, debe realizar un Orderby antes de poder usar Skip and Take.

Question

Tengo un objeto de tipo System.Generic.Collections.List (Of MyCustomClass).

Dado enteros varables pagesize y pagenumber, ¿cómo puedo consultar solo una sola página de objetos MyCustomClass?