TransWikia.com

Paginar consulta con Linq

Stack Overflow en español Asked by Jhon Castrillon on November 15, 2021

Tengo el siguiente controlador:

Necesito que al final mandarle a la vista las facturas pero paginadas osea de a 20…

    public ActionResult Index()
    {                   

        //se trae la informacion de la base de datos y/o modelo
        var facturas = db.VwFacturasGeneralFull;         

        //por defecto el siguiente switch va ornedar por el sigueinte:
        var facturasOrdenadas = facturas.OrderBy(f => f.IDFactura).ToList();


      return View(facturasOrdenadas.ToList());
    }

Lo he intentado de varias formas pero no lo logro.

2 Answers

para realizar la paginación debes usar los métodos Skip() y Take() según te muestro en el siguiente ejemplo

int numberOfObjectsPerPage = 20;
int pageNumber = 1;

var queryResultPage = queryResult
                          .Skip(numberOfObjectsPerPage * pageNumber)
                          .Take(numberOfObjectsPerPage);

Te dejo un enlace de un artículo (en inglés) que puede serte de utilidad Return Or Skip Elements in a Sequence

Answered by Sergio Parra Guerra on November 15, 2021

Si lo que necesitas es coger un cierto rango de valores de la lista en tu caso los 20 primeros valores puedes usar algo así:

 var listaADevolver =facturasOrdenadas.GetRange(0, 20);

Espero que te sea de utilidad.

Answered by ElGerar on November 15, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP