Introdução ao LINQ (Language Integrated Query) em C#
O LINQ (Language Integrated Query) é uma extensão poderosa do C# que permite consultas declarativas em várias fontes de dados. Ele fornece uma maneira intuitiva e uniforme de consultar coleções de objetos, bancos de dados, serviços web e outros tipos de dados.
Benefícios do LINQ
Sintaxe Intuitiva:
O LINQ oferece uma sintaxe declarativa e fácil de entender, permitindo que os desenvolvedores escrevam consultas complexas de forma mais simples.
Tipagem Forte:
As consultas LINQ são tipadas em tempo de compilação, proporcionando segurança adicional ao código.
Interoperabilidade:
O LINQ é compatível com várias fontes de dados, incluindo bancos de dados SQL, XML, coleções de objetos e serviços web.
Exemplos de Uso do LINQ em C#
Vamos explorar alguns exemplos simples de como usar o LINQ em C#.
Exemplo 1: Consulta em uma lista de números
Suponha que tenhamos uma lista de números e queremos encontrar os números pares.
using System;
using System.Linq;
class Program
{
static void Main()
{
int[] numeros = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var numerosPares = from num in numeros
where num % 2 == 0
select num;
foreach (var num in numerosPares)
{
Console.WriteLine(num);
}
}
}
Exemplo 2: Consulta em uma coleção de objetos
Agora, vamos supor que tenhamos uma coleção de objetos Pessoa e queremos encontrar todas as pessoas com idade superior a 18 anos.
using System;
using System.Linq;
using System.Collections.Generic;
class Pessoa
{
public string Nome { get; set; }
public int Idade { get; set; }
}
class Program
{
static void Main()
{
List<Pessoa> pessoas = new List<Pessoa>
{
new Pessoa { Nome = "João", Idade = 25 },
new Pessoa { Nome = "Maria", Idade = 17 },
new Pessoa { Nome = "Lucas", Idade = 19 },
new Pessoa { Nome = "Ana", Idade = 21 },
new Pessoa { Nome = "Clara", Idade = 16 }
};
var maioresDeIdade = from pessoa in pessoas
where pessoa.Idade > 18
select pessoa;
foreach (var pessoa in maioresDeIdade)
{
Console.WriteLine($"{pessoa.Nome} - {pessoa.Idade} anos");
}
}
}
Considerações Finais
O LINQ é uma ferramenta poderosa para manipulação de dados em C#. Ele simplifica a escrita de consultas complexas e permite que os desenvolvedores expressem suas intenções de forma mais clara e concisa. Espero que este artigo tenha fornecido uma introdução útil ao uso do LINQ em C#. Experimente com esses exemplos e explore ainda mais as possibilidades que o LINQ oferece!
Para mais informações, recomendo ir na documentação da Microsoft - Introdução a consultas LINQ (C#) - C# | Microsoft Learn