p>

capaNET42.JPG

Clique aqui para ler todos os artigos desta edição

.NET 3.0

LINQ - A revolução do .NET 3.0

 

Este artigo discute

Este artigo usa as seguintes tecnologias

·       O que é LINQ;

·       Query Expressions;

·       LINQ com objetos;

·       Lambda, tipos anônimos, inicialização de coleções;

·       LINQ com banco de dados.

LINQ, C# 3.0.

 

A plataforma .NET passou por uma grande evolução, por exemplo na versão 2.0 tivemos o conceito de Generics, como mais uma alternativa muito interessante diga-se de passagem, para trabalhar com mais flexibilidade na criação e na manipulação de objetos e coleções genéricas.

Então para os que achavam que não havia mais o que ser implementado no Framework, ao menos em um curto período de tempo, estou aqui pra dizer que para nossa felicidade, a versão 3.0 veio com muitos outros recursos tão interessantes quanto o Generics:

·         Inferência do tipo de variáveis locais;

·         Tipos anônimos;

·         Expressões Lambda;

·         Métodos de extensão;

·         Propriedades automáticas;

·         Expressions Trees;

·         LINQ (Language Integrated Query);

·         Inicialização de objetos e coleções.

Apesar de tantos recursos novos e interessantes, este artigo vai focar principalmente na linguagem LINQ, que particularmente considero uma das mais interessantes inovações criadas para a plataforma .NET, assim como outros conceitos que são necessários para o seu entendimento.

O que é LINQ?

A linguagem LINQ é basicamente uma forma de unificar querys de consultas a bancos de dados, a documentos XML e consultas a coleções utilizando uma sintaxe única e muito flexível.

Isso com certeza facilita muito o dia a dia do desenvolvedor, pois não é difícil encontrar pessoas que já tiveram problemas para manipular, por exemplo, um documento XML no qual alguns nodes específicos deveriam ser capturados, por não conhecerem a XPATH. O mesmo acontece com as consultas ao banco de dados e a coleções de objetos, devido não haver uma sintaxe padrão que possibilite um resultado idêntico em situações bem distintas, como nos casos mencionados.

Quando se fala da linguagem LINQ, podemos subdividi-la em três módulos, sendo:

·         DLinq: Permite que sejam feitas consultas em banco de dados (ADO.NET);

·         XLinq: Permite que sejam feitas consultas em XML (System.XML);

·         Standard Query Operators: Permite que sejam feitas consultas a objetos.

Esse recurso até o momento só está disponível nas linguagens C# e VB e na versão CTP do Visual Studio (Orcas) lançada em março desse ano e que pode ser baixada em: www.microsoft.com/downloads/details.aspx?FamilyId=CF76FCBA-07AF-47AC-8822-4AD346210670&displaylang=en#Instructions.

A Figura 1 mostra a estrutura da LINQ.

 

Figura 1. Estrutura da Language Integrated Query (LINQ)

Sintaxe da LINQ

A sintaxe das query expressions (nome dado às querys LINQ) ...

Quer ler esse conteúdo completo? Tenha acesso completo