Desenvolvimento - C#
Descobrindo o LINQ to Objects
Esse artigo tem por objetivo mostrar de forma geral a execução de queries sobre lista de objetos utilizando o LINQ to Objects.
por Augusto César Barcelos Nunes FilhoBaixe o código-fonte.
Olá pessoal, o que me motivou a escrever este arquivo foi o fato de observar muitos projetos sendo iniciados utilizando as novas versões do Microsoft .NET framework, mas, mantendo técnicas de programação utilizadas nas versões mais antigas, ou seja, os novos recursos do framework não são aproveitados.
Dentre esses recursos que ainda julgo pouco aproveitados, exemplificarei aqui de forma objetiva e simples a utilização do “LINQ to Objects” (Language Integrated Query) que segundo definições da própria Microsoft (http://msdn.microsoft.com) consiste na execução de “queries” semelhantes às escritas em SQL (Structured Query Language) sobre coleções que implementam uma das interfaces IEnumerable ou IEnumerable<T>.
O Namespace utilizado nesse tipo de manipulação é o System.Linq que é importado por padrão em projetos criados utilizando o .Net Framework 3.5 no Microsoft Visual Studio 2008 ou versões posteriores. Esse tipo de abordagem propicia ao desenvolvedor um amplo controle sobre as listas (filtrar, agrupar, etc.) diminuindo a complexidade do código.
Criei o exemplo abaixo com o intuito de mostrar uma visão geral sobre o “LINQ to Objects” e despertar a curiosidade dos leitores que ainda desconhecem esse recurso, não me preocupando ainda em detalhar os métodos utilizados por ele (Os próximos artigos serão escritos com essa finalidade). No pequeno aplicativo abaixo existe uma lista do tipo “User” que é povoada com várias instâncias randômicas, a partir desse ponto, diversas “queries” serão escritas a fim de filtrar essa coleção e recuperar as instâncias de acordo com os critérios que eu estabeleci.
Figura 1 – A Coleção será criada com base nesse tipo.
Figura 2 –Consultas executadas sobre
as listas
Figura 3 – Método para exibir as
listas resultantes
Figura 4 – Método para exibir as
listas resultantes (Sobrecarregado)
Figura 5 – Método responsável por
popular a lista de usuários.
Espero ter alcançado o meu objetivo que era despertar no leitor o interesse em pesquisar os novos recursos do Microsoft .Net Framework. Nos próximos artigos abordarei o “LINQ to Objects” com um nível maior de detalhes.
Referência: http://msdn.microsoft.com/en-us/library/bb397919.aspx