LINQ - Operadores de consulta

Um conjunto de métodos de extensão formando um padrão de consulta é conhecido como Operadores de Consulta Padrão LINQ. Como blocos de construção de expressões de consulta LINQ, esses operadores oferecem uma variedade de recursos de consulta, como filtragem, classificação, projeção, agregação, etc.

Os operadores de consulta padrão do LINQ podem ser categorizados nos seguintes com base em sua funcionalidade.

  • Operadores de filtragem
  • Operadores de adesão
  • Operações de Projeção
  • Operadores de classificação
  • Operadores de agrupamento
  • Conversions
  • Concatenation
  • Aggregation
  • Quantifier Operations
  • Operações de Partição
  • Operações de Geração
  • Operações de conjunto
  • Equality
  • Operadores de elemento

Operadores de filtragem

A filtragem é uma operação para restringir o conjunto de resultados de forma que ele tenha apenas elementos selecionados que satisfaçam uma condição específica.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Onde Filtrar valores com base em uma função de predicado Onde Onde
OfType Filtre os valores com base em sua capacidade de ser um tipo especificado Não aplicável Não aplicável

Operadores de adesão

A união refere-se a uma operação na qual as fontes de dados com relacionamentos difíceis de acompanhar entre si de forma direta são direcionadas.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Junte-se O operador junta duas sequências com base em chaves correspondentes entrar ... em ... em ... é igual a ... De x In…, y In… Onde xa = ya
GroupJoin Junte duas sequências e agrupe os elementos correspondentes entrar ... em ... em ... é igual a ... em ... Participar do grupo… Em… Em…

Operações de Projeção

Projeção é uma operação na qual um objeto é transformado em uma forma totalmente nova, com apenas propriedades específicas.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Selecione O operador projeta valores com base em uma função de transformação selecionar Selecione
SelectMany O operador projeta as sequências de valores que são baseadas em uma função de transformação, bem como os achata em uma única sequência Use várias cláusulas from Use várias cláusulas From

Operadores de classificação

Uma operação de classificação permite ordenar os elementos de uma sequência com base em um ou mais atributos.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Ordenar por O operador classifica os valores em ordem crescente ordenar por Ordenar por
OrderByDescending O operador classifica os valores em ordem decrescente ordem por ... decrescente Ordem por ... Decrescente
ThenBy Executa uma classificação secundária em ordem crescente ordenar por …, … Ordenar por …, …
ThenByDescending Executa uma classificação secundária em ordem decrescente ordem por ..., ... decrescente Ordem por ..., ... decrescente
Reverter Executa uma reversão da ordem dos elementos em uma coleção Não aplicável Não aplicável

Operadores de agrupamento

Os operadores colocam dados em alguns grupos com base em um atributo compartilhado comum.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
GroupBy Organize uma sequência de itens em grupos e retorne-os como uma coleção IEnumerable do tipo IGrouping <chave, elemento> grupo ... por -ou- grupo ... por ... em ... Grupo ... Por ... Em ...
Procurar Execute uma operação de agrupamento em que uma sequência de pares de chaves é retornada Não aplicável Não aplicável

Conversões

Os operadores alteram o tipo de objetos de entrada e são usados ​​em uma ampla variedade de aplicativos.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
AsEnumerable Retorna a entrada digitada como IEnumerable <T> Não aplicável Não aplicável
AsQueryable Um IEnumerable (genérico) é convertido em um IQueryable (genérico) Não aplicável Não aplicável
Fundida Executa a conversão de elementos de uma coleção para um tipo especificado Use uma variável de intervalo digitada explicitamente. Ex: da string str em palavras De ... como ...
OfType Filtra os valores com base em seus, dependendo de sua capacidade de ser convertido para um tipo específico Não aplicável Não aplicável
ToArray Força a execução da consulta e faz a conversão de uma coleção em uma matriz Não aplicável Não aplicável
ToDictionary Com base em uma função de seletor de chave, defina elementos em um Dictionary <TKey, TValue> e força a execução de uma consulta LINQ Não aplicável Não aplicável
Listar Força a execução de uma consulta convertendo uma coleção em uma Lista <T> Não aplicável Não aplicável
Procurar Força a execução de uma consulta e coloca elementos em Lookup <TKey, TElement> com base em uma função de seletor de chave Não aplicável Não aplicável

Concatenação

Executa a concatenação de duas sequências e é bastante semelhante ao operador União em termos de operação, exceto pelo fato de que isso não remove duplicatas.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Concat Duas sequências são concatenadas para a formação de uma única sequência. Não aplicável Não aplicável

Agregação

Executa qualquer tipo de agregação desejada e permite a criação de agregações personalizadas no LINQ.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Agregar Opera nos valores de uma coleção para realizar uma operação de agregação personalizada Não aplicável Não aplicável
Média O valor médio de uma coleção de valores é calculado Não aplicável Agregar… em… na média ()
Contagem Conta os elementos que satisfazem uma função de predicado na coleção Não aplicável Agregar… em… na contagem ()
LonCount Conta os elementos que satisfazem uma função de predicado em uma coleção enorme Não aplicável Agregar… Em… Em LongCount ()
Max Descubra o valor máximo em uma coleção Não aplicável Agregar… em… no máximo ()
Min Descubra o valor mínimo existente em uma coleção Não aplicável Agregar… em… em min ()
Soma Descubra a soma dos valores em uma coleção Não aplicável Agregar… em… na soma ()

Quantifier Operations

Esses operadores retornam um valor booleano, ou seja, True ou False quando alguns ou todos os elementos de uma sequência satisfazem uma condição específica.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Todos Retorna um valor 'True' se todos os elementos de uma sequência satisfizerem uma condição de predicado Não aplicável Agregar ... em ... em todos (...)
Qualquer Determina, pesquisando uma sequência, se algum elemento da mesma satisfaz uma condição especificada Não aplicável Agregar… em… em qualquer ()
Contém Retorna um valor 'Verdadeiro' se descobrir que um elemento específico está lá em uma sequência se a sequência não contiver esse elemento específico, o valor 'falso' é retornado Não aplicável Não aplicável

Operadores de partição

Divida uma sequência de entrada em duas seções separadas sem reorganizar os elementos da sequência e depois retornar um deles.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Pular Pula um número especificado de elementos em uma sequência e retorna os restantes Não aplicável Pular
SkipWhile Igual ao de Skip, com a única exceção de que o número de elementos a serem ignorados é especificado por uma condição booleana Não aplicável Pular enquanto
Levar Pegue um determinado número de elementos de uma sequência e pule os restantes Não aplicável Levar
TakeWhile O mesmo que Take, exceto pelo fato de que o número de elementos a serem tomados são especificados por uma condição booleana Não aplicável Demorar um pouco

Operações de Geração

Uma nova sequência de valores é criada por operadores geracionais.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
DefaultIfEmpty Quando aplicado a uma sequência vazia, gera um elemento padrão dentro de uma sequência Não aplicável Não aplicável
Vazio Retorna uma sequência vazia de valores e é o operador geracional mais simples Não aplicável Não aplicável
Alcance Gera uma coleção com uma sequência de inteiros ou números Não aplicável Não aplicável
Repetir Gera uma sequência contendo valores repetidos de um comprimento específico Não aplicável Não aplicável

Operações de conjunto

Existem quatro operadores para as operações definidas, cada um produzindo um resultado com base em critérios diferentes.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Distinto Resulta em uma lista de valores únicos de uma coleção, filtrando dados duplicados, se houver Não aplicável Distinto
Exceto Compara os valores de duas coleções e retorna aqueles de uma coleção que não estão na outra coleção Não aplicável Não aplicável
Cruzar Retorna o conjunto de valores encontrados como idênticos em duas coleções separadas Não aplicável Não aplicável
União Combina o conteúdo de duas coleções diferentes em uma única lista que também sem qualquer conteúdo duplicado Não aplicável Não aplicável

Igualdade

Compara duas sentenças (enumeráveis) e determina se são uma correspondência exata ou não.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
SequenceEqual Resulta um valor booleano se duas sequências forem idênticas entre si Não aplicável Não aplicável

Operadores de elemento

Exceto o DefaultIfEmpty, todos os outros oito operadores de elemento de consulta padrão retornam um único elemento de uma coleção.

Mostrar exemplos

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
ElementAt Retorna um elemento presente em um índice específico em uma coleção Não aplicável Não aplicável
ElementAtOrDefault O mesmo que ElementAt, exceto pelo fato de que também retorna um valor padrão no caso do índice específico estar fora do intervalo Não aplicável Não aplicável
Primeiro Recupera o primeiro elemento em uma coleção ou o primeiro elemento que satisfaz uma condição específica Não aplicável Não aplicável
FirstOrDefault O mesmo que Primeiro, exceto pelo fato de que também retorna um valor padrão no caso de não haver tais elementos Não aplicável Não aplicável
Último Recupera o último elemento presente em uma coleção ou o último elemento que satisfaça uma condição específica Não aplicável Não aplicável
LastOrDefault Igual ao Último, exceto pelo fato de que também retorna um valor padrão no caso de não haver qualquer um desses elementos Não aplicável Não aplicável
solteiro Retorna o elemento solitário de uma coleção ou o elemento solitário que satisfaz uma determinada condição Não aplicável Não aplicável
SingleOrDefault O mesmo que Único, exceto que também retorna um valor padrão se não houver nenhum elemento solitário Não aplicável Não aplicável
DefaultIfEmpty Retorna um valor padrão se a coleção ou lista estiver vazia ou nula Não aplicável Não aplicável