Skip to content

Instantly share code, notes, and snippets.

@robsonfaxas
Last active June 8, 2021 00:01
Show Gist options
  • Save robsonfaxas/7c9ed830eca01870c6067c907261fa72 to your computer and use it in GitHub Desktop.
Save robsonfaxas/7c9ed830eca01870c6067c907261fa72 to your computer and use it in GitHub Desktop.
[Expressões Linq] Diferentes expressões em linq #linq
#######################
A sintaxe de consulta disponibiliza as seguintes cláusulas]:
[from]: especifica a fonte de dados e uma variável de interação.
[where]: especifica um filtro booleano (podendo conter uma ou mais expressões lógicas) que será aplicado nos elementos da fonte de dados.
[select]: especifica o tipo e a forma que serão retornados os elementos da fonte de dados.
[group]: consulta grupo de acordo com o valor especificado.
[into]: fornece um identificador que pode servir de referência para resultados das cláusulas]: join, group e select.
[orderby]: ordena os resultados em ordem crescente (ascending) ou decrescente (descending).
[join]: une duas fontes de dados com base na comparação entre valores comuns nas fontes.
[let]: introduz uma variável de interação para ser utilizada com “sub” pesquisa.
[in]: palavra-chave contextual das cláusulas select e join.
[on]: palavra-chave contextual da cláusula join.
[equals]: palavra-chave contextual da cláusula join.
[by]: palavra-chave contextual da cláusula group.
[ascending]: palavra-chave contextual da cláusula orderby.
[descending]: palavra-chave contextual da cláusula orderby.
#######################
Já a sintaxe de método disponibiliza os seguintes métodos:
[Agregate()]: Aplica uma função acumuladora sobre os elementos de uma sequência. Por exemplo, é possível concatenar strings individuais de uma série de registros em uma única string.
[All()]: Determina se todos os elementos de uma sequência satisfazem uma condição particular.
[Any()]: Determina se uma sequência contém elementos.
[Average()]: Calcula a média dos elementos de uma sequência.
[Concat()]: Adiciona uma sequência à outra para criar uma sequência única.
[Contains()]: Verifica o elemento especificado da sequência utilizando o comparador de igualdade.
[Convert()]: Altera o tipo de um elemento.
[Count()]: Obtém o número de elementos de uma sequência.
[DefaultIfEmpty()]: Retorna a sequência quando há elementos para retornar. Caso contrário, retorna o valor padrão definido para a sequência.
[Distinct()]: Retorna apenas os elementos únicos da sequência. Ou seja, quando dois elementos têm o mesmo valor, apenas um deles é retornado.
[ElementAt()]: Retorna o elemento encontrado no índice especificado.
[EqualAll()]: Determina se duas sequências são exatamente iguais, o que significa que elas devem possuir os mesmos elementos que aparecem na mesma ordem.
[Except()]: Cria uma sequência que contém os elementos que não combinam entre duas sequências.
[First()]: Retorna o primeiro elemento da sequência.
[FirstOrDefault()]: Retorna o primeiro elemento da sequência, se ele existir; ou o valor padrão informado, se não existir.
[GroupBy()]: Coloca os elementos de uma sequência em um grupo utilizando a chave especificada.
[GroupJoin()]: Combina duas sequências separadas em uma única sequência utilizando um atributo comum.
[Insersect()]: Gera uma intersecção de duas sequências utilizando um comparador padrão.
[Join()]: Combina duas sequências separadas em uma única sequência utilizando um atributo comum entre elas.
[Last()]: Retorna o último elemento da sequência.
[LastOrDefault()]: Retorna o último elemento da sequência, se ele existir; ou o valor padrão informado, se não existir.
[LongCount()]: Obtém o número de elementos de uma sequência em um valor de 64 bits. Esse método deve ser utilizado quando a sequência possuir milhares de elementos.
[Max()]: Determina qual é o elemento que contém o valor máximo na sequência.
[Min()]: Determina qual é o elemento que contém o valor mínimo na sequência.
[OfType()]: Determina se um elemento é de um tipo específico.
[OrderBy()]: Ordena os elementos de uma sequência de forma ascendente utilizando a chave especificada.
[OrderByDescending()]: Ordena os elementos de uma sequência de forma decrescente utilizando a chave especificada.
[Reverse()]: Inverte a ordem dos elementos em uma sequência.
[Select()]: Escolhe cada elemento de uma sequência e, opcionalmente, modifica sua forma.
[SelectMany()]: Escolhe cada elemento de uma sequência e o adiciona em um objeto IEnumerable.
[Single()]: Retorna o único elemento de uma sequência que satisfaz a condição especificada e gera uma exceção se existir mais de um elemento que satisfaça a condição.
[Skip()]: Ignora o número especificado de elementos em uma sequência e retorna os elementos restantes.
[Sum()]: Soma os valores individuais de cada elemento em uma sequência para criar um total.
[Take()]: Retorna o número especificado de elementos em uma sequência e ignora os restantes (se existir).
[TakeWhile()]: Retorna o número especificado de elementos em uma sequência enquanto a condição especificada for verdadeira, e ignora os restantes (se existir).
[ThenBy()]: Aplica uma ordenação subsequente em elementos de uma sequência de forma ascendente utilizando a chave especificada.
[ThenByDescending()]: Aplica uma ordenação subsequente em elementos de uma sequência de forma descendente, utilizando a chave especificada.
[Union()]: Aplica a união de conjunto em duas sequências utilizando o comparador padrão.
[Where()]: Filtra uma sequência com base no critério informado na forma de uma expressão.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment