Filtrar e selecionar dados de produtos com LINQ em C#
Nesta lição, você vai montar uma cadeia de consulta LINQ para filtrar, ordenar e obter os nomes dos produtos que atendem a uma condição.
Introdução
Uma consulta LINQ pode combinar várias etapas, como filtrar, ordenar e selecionar dados (projeção), em uma cadeia contínua. O importante é que a consulta não altera a lista original: ela apenas produz um novo resultado.
Where mantém os produtos com preço a partir de 20, OrderBy os ordena por preço crescente e Select pega apenas o nome de cada produto. O resultado é Book, Bag, enquanto o array products original continua com os três produtos.
Exemplo de C# executável
using System;
using System.Linq;
record Product(string Name, decimal Price);
class Program
{
static void Main()
{
var products = new[] { new Product("Book", 30), new Product("Pen", 5), new Product("Bag", 45) };
var names = products.Where(p => p.Price >= 20).OrderBy(p => p.Price).Select(p => p.Name);
Console.WriteLine(string.Join(", ", names));
}
}
Book, BagPratique com o depurador
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.
- Ordenar por uma chave escolhida Ordene pessoas por nome ou por idade com um comparador escolhido em tempo de execução, quebrando empates de forma consistente. Fácil
- Above-Average Values Keep the values that are greater than the average. Fácil