Exercícios de C#

Paginar dados com Skip e Take em C#

Nesta lição, você vai obter os dados de uma página específica de uma lista com Skip e Take do LINQ.

Introdução

Quando há muitos dados, as aplicações costumam mostrá-los página por página, por exemplo 10 produtos por página. O LINQ oferece dois métodos: Skip, para pular alguns elementos do início, e Take, para pegar os elementos seguintes; juntos, eles fazem a paginação.

Com as páginas numeradas a partir de 1, a quantidade de elementos a pular é (page - 1) * size. Na página 2, com 3 elementos por página, o programa pula os 3 primeiros e pega os 3 seguintes, que são 4, 5 e 6. Na prática, ordene os dados antes de paginar para que a ordem das páginas seja sempre estável.

Exemplo de C# executável

C#
Rodar código →
Program.cs
using System;
using System.Linq;
class Program
{
    static void Main()
    {
        int page = 2, size = 3;
        var items = Enumerable.Range(1, 10).Skip((page - 1) * size).Take(size);
        Console.WriteLine(string.Join(", ", items));
    }
}
Resultado da execução
4, 5, 6

Pratique com o depurador

Coloque um breakpoint em uma atribuição ou condição importante, clique em Debug e veja os valores das variáveis locais antes de passar para a próxima linha.

Pratique com um desafio

Use o conteúdo desta lição para resolver um problema real. Cada desafio roda no navegador, com testes instantâneos e uma revisão por IA.

Todos os desafios