• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Introdução ao LINQ
 

Introdução ao LINQ

on

  • 1,620 views

Introdução do LINQ, um componente do .NET que disponibiliza mecanismos para efetuar consultas de propósito geral, com uma sintaxe parecida a da SQL.

Introdução do LINQ, um componente do .NET que disponibiliza mecanismos para efetuar consultas de propósito geral, com uma sintaxe parecida a da SQL.

Statistics

Views

Total Views
1,620
Views on SlideShare
1,609
Embed Views
11

Actions

Likes
0
Downloads
30
Comments
0

3 Embeds 11

http://dotando.blogspot.com 7
http://www.dotando.blogspot.com 3
http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Introdução ao LINQ Introdução ao LINQ Presentation Transcript

    • Introdução ao LINQ
      Everton Coimbra de Araújo
      everton@utfpr.edu.br
      http://pptinformatica.com.br/wordpress
      http://twitter.com/evertonfoz
      Fábio Augusto Pandolfo
      fabiopand@gmail.com
      http://dotando.blogspot.com
      http://twitter.com/fabiopand
    • Objetivos
      Fazer uma introdução conceitual e prática das tecnologias necessárias para a utilização do LINQ.
    • Agenda
      Visão geral sobre o LINQ
      Breve histórico
      Arquitetura
      Evoluções de linguagem
    • Oque é o LINQ?
      O LINQ(Language Integrated Query) é um componente do .NET que disponibiliza mecanismos para efetuar consultas de propósito geral, com uma sintaxe parecida a da SQL (Structured Query Language).
    • Breve histórico do LINQ
      Teve seu lançamento no .NET 3.5
      O .NET 3.0 introduziu um conjunto de novas funcionalidades que viabilizaram o LINQ
      Extension Methods,
      Lambda Expressions,
      Anonymous Types,
      Implicitly Typed Local Variables (var)
    • Oque consultar com o LINQ?
      Praticamente tudo
      LINQ to Objects (IEnumerable and IQueryable)
      LINQ to XML
      LINQ to Entities
      Várias outras implementações
    • Arquitetura
    • IEnumerable e IQueryable
      IEnumerable – executada parta por parte
      IQueryable – executada de uma só vez
      where
      select
      Execute
      Execute
      where
      select
      Capture & Execute
    • Object Initializers
      Permitem inicializar objetos de forma rápida e compacta
    • Collection Initializers
      Maneira simples de setar valores em coleções
    • Object e Collection Initializers
    • Implicitly Typed Local Variables (var)
      O compilador determina o tipo da variável
      Uma vez setada, não pode ser mudada
      Exemplo:
      var s = “olá mundo”; //string
      var i = 100; //int
      var d = 100.5; //double
    • Implicitly Typed Local Variables (var)
    • Anonymous Types
      Permite encapsular propriedades públicas somente leitura em um único objeto, sem ter que definir explicitamente seus tipos
      Exemplo:
      new { Nome = “Homer”, Sobrenome= “Simpson”}
    • Anonymous Types
    • Extension Methods
      Permitem estender as funcionalidades de outra classe
      O namespace correto precisa ser referenciado
      Muito útil em classes Sealed
    • Extension Methods
    • Lambda Expressions
      Lambda Operator =>
      Abreviam a criação de um delegate (forma segura de ponteiro para função)
      Não é realmente necessário compreender o seu funcionamento
      Exemplo:
      alunos.Where( a => a.Nome == “Fábio”)
    • Lambda Expressions
    • Query Expressions
      Parecido com SQL (Structured Query Language)
      Exemplo:
      SELECT a.*
      FROM alunos a
      WHERE a.Id != 0
      ORDER BY a.Nome
      var resultado = from a in Alunos
      where a.Id != 0
      orderby a.Nome
      select a;
    • Query Expressions
    • Query Operators
      São Extension Methods.
      Exemplos: Select(), Where(), OrderBy(), etc.
      Muitos Query Operators retornam outra coleção (IEnumerable).
      Podem ser utilizados em conjunto:
      alunos.Where(aluno => aluno.Idade > 21).OrderBy(aluno => aluno.Idade)
    • Query Operators
    • Conclusões
      O LINQ oferece uma sintaxe de consulta próxima da linguagem do desenvolvedor, oque torna o desenvolvimento muito mais padronizado, gerando ganho de produtividade e facilidade de manutenção
    • Links interessantes
      Blog - Fábio Pandolfo - Slides e recursos deste minicurso
      http://dotando.blogspot.com
      Blog - Andy Schwam - Consultor Independente
      http://blog.ingenuitynow.net/
      Artigo - Apresentando LINQ
      http://www.macoratti.net/07/12/net_linq.htm
      Artigo - Getting Started with LINQ in C#
      http://msdn.microsoft.com/en-us/library/bb397933.aspx
      Artigo - Language Integrated Query
      http://en.wikipedia.org/wiki/Language_Integrated_Query
      Artigo - Standard Query Operators with LINQ
      http://msdn.microsoft.com/en-us/magazine/cc337893.aspx
    • Links interessantes
      Artigo - Anonymous Types (C# Programming Guide)
      http://msdn.microsoft.com/en-us/library/bb397696.aspx
      Artigo - Implicitly Typed Local Variables (C# Programming Guide)
      http://msdn.microsoft.com/en-us/library/bb384061.aspx
      Artigo - var (C# Reference)
      http://msdn.microsoft.com/en-us/library/bb383973.aspx
      Artigo - Extension Methods (C# Programming Guide)
      http://msdn.microsoft.com/en-us/library/bb383977.aspx
      Artigo - Basic LINQ Query Operations (C#)
      http://msdn.microsoft.com/en-us/library/bb397927.aspx
      Artigo - LINQ Query Expressions (C# Programming Guide)
      http://msdn.microsoft.com/en-us/library/bb397676.aspx