logo

O que é LINQ?

LINQ é conhecido como Consulta Integrada de Linguagem e é apresentado no .NET 3.5 e no Visual Studio 2008. A excelência do LINQ é que ele dá capacidade às linguagens .NET (como C#, VB.NET e assim por diante) para criar consultas para recuperar informações da fonte de informação. Por exemplo, um programa pode obter dados dos registros dos substitutos ou dos registros dos trabalhadores, e assim por diante. Nos anos anteriores, esse tipo de informação era armazenado em um conjunto de dados diferente do aplicativo, e você realmente deseja aprender vários tipos de linguagem de perguntas para acessar esse tipo de informação como SQL, XML e assim por diante. Além disso, você não pode fazer perguntas utilizando a linguagem C# ou alguma outra linguagem .NET.

formulário completo iskcon

Para superar esse tipo de problema, a Microsoft criou o LINQ. Ele conecta mais uma capacidade aos dialetos C# ou .NET para criar uma pergunta para qualquer fonte de informação viável LINQ. Além do mais, a melhor parte é que a estrutura da frase usada para fazer uma pergunta é semelhante, independentemente do tipo de fonte de informação utilizada, o que significa que a gramática de fazer uma consulta sobre informações em um conjunto de dados sociais é a mesma usada para fazer as informações da pergunta. guardado em um cluster, há um motivo convincente para a necessidade de utilizar SQL ou algum outro componente de linguagem não .NET. Você também pode utilizar LINQ com SQL, com registros XML, com ADO.NET, com administrações web e com alguma outra base de informações.

Em C#, o LINQ está disponível em System. Espaço para nome Linq. Ele oferece diferentes tipos de aulas e técnicas que atendem às questões do LINQ. Neste espaço para nome:

  1. A classe Enumerable contém um operador de consulta padrão que funciona em um objeto que executa IEnumerable.
  2. A classe consultável contém administradores de consulta padrão que trabalham em um objeto que executa IQueryable.

Por exemplo : SQL é uma linguagem de consulta estruturada usada para salvar e recuperar dados do banco de dados. Da mesma forma, LINQ é uma estrutura de frase de consulta organizada. LINQ é o C# básico. É utilizado para recuperar informações de vários tipos de fontes, por exemplo, XML, documentos, coleções, ADO.Net DataSet, Web Service, MS SQL Server e diversos servidores de banco de dados.

O que é LINQ

Usos do LINQ

  1. A principal razão por trás de fazer o LINQ é que, antes do C# 3.0, usávamos o loop for, para cada loop ou delegados para percorrer uma coleção para rastrear um objeto específico, mas a desvantagem de envolver essas estratégias para encontrar um objeto é que você realmente deseja componha uma enorme quantidade de código para encontrar um objeto que seja ainda mais tedioso e torne seu programa menos lúcido. Portanto, para solucionar esses problemas, é apresentado o LINQ, que realiza atividades semelhantes em algumas linhas e deixa seu código claro; além disso, você pode envolver códigos semelhantes em projetos diferentes.
  2. Além disso, fornece verificação de classificação completa em tempo de compilação. Ajuda-nos a distinguir os erros em tempo de execução, para que possamos eliminá-los sem dúvida.
  3. LINQ é uma linguagem simples, muito organizada e de nível significativo que o SQL
  4. Você também pode utilizar LINQ com array e coleções C#. Ele fornece outra orientação para cuidar de problemas antigos de uma forma poderosa.
  5. Com a ajuda do LINQ, você pode, sem dúvida, trabalhar com fontes de dados como XML, SQL, entidades, objetos e assim por diante. Uma única consulta pode funcionar com o banco de dados, motivo convincente para a necessidade de aprender vários tipos de idiomas.
  6. LINQ suporta expressões de consulta, tipos anônimos, variáveis ​​digitadas implicitamente, expressões Lambda, inicializadores de objetos e coleções e métodos de extensão.

Podemos usar consultas LINQ de duas maneiras

A estrutura de sintaxe da consulta LINQ é composta por palavras-chave de consulta caracterizadas na versão do sistema .NET 3.5 ou superior. Isso permite que o engenheiro de software ou desenvolvedores componham as instruções de maneira muito semelhante ao design SQL no código (C# ou VB.NET) sem a utilização de taxas. É da mesma forma conhecido à luz da Gramática de Articulação de Questões. No LINQ, você pode compor a consulta para séries IEnumerable ou fontes de dados IQueryable utilizando as seguintes estratégias:

1. Sintaxe da consulta:

A sintaxe da linguagem de consulta LINQ começa com a palavra-chave from e termina com a palavra-chave Select ou GroupBy. Após a palavra-chave from, você pode utilizar vários tipos de operações de consulta padrão, como agrupamento, filtragem e assim por diante, conforme indicado por sua necessidade. No LINQ, 50 tipos exclusivos de administradores de perguntas padrão estão acessíveis.

Etapas para escrever a sintaxe da consulta:

Passo 1: Na primeira etapa, temos que adicionar o namespace System.Linq no código.

 i.e., using System.Linq; 

Passo 2: Numa segunda etapa, temos que criar a fonte de dados sobre a qual devemos realizar as operações

 Ex: List list = new List() { ' Hii ', ' Welcome to JavaTpoint ', ' The topic is LINQ.' ' Any Queries ' }; 

Etapa 3: Na terceira etapa, temos que criar a consulta para a fonte de dados usando uma palavra-chave como select, from, etc.

 Ex: var r = from l in list where l.Contains(' Hii ') select l; 

Aqui r é a variável de consulta que armazena o resultado da articulação da consulta. A cláusula form é utilizada para determinar a fonte de informação, ou seja, lista, onde a condição se aplica ao canal, ou seja, l.Contains(' Hii ') e a instrução select fornece o tipo de coisas trazidas de volta. Além disso, l é a variável de alcance.

Passo 4: A etapa final é executar a consulta usando o loop for each.

 EX: foreach(var i in r) { Console.WriteLine(i); } 

Programa de exemplo na sintaxe de consulta:

 // program to create LINQ query using Query Syntax // step-1: Adding the System.Linq namespace in the code. using System; using System.Linq; using System.Collections.Generic; class HelloWorld { // Main Method static public void Main() { // Step-2: creating the data source on which we have to perform the operations List list = new List() { ' Hii JavaTpoint', ' Welcome to JavaTpoint ', ' The topic is LINQ ', ' Any Queries ' }; // step-3: Creating the LINQ query for the data source using a keyword like select, from, etc. var r = from l in list where l.Contains(' JavaTpoint') select l; // In this will print only the sentence which contains JavaTpoint word // step-4: Executing LINQ Query using the for each loop foreach(var i in r) { Console.WriteLine(i); } } } 

Saída:

k algoritmo do vizinho mais próximo
O que é LINQ

2. Sintaxe do método

No LINQ, a sintaxe do método é utilizada para chamar o método de expansão para as classes estáticas Enumerable ou Queryable. Também é chamado de sintaxe de extensão de método ou fluente. Não obstante, o compilador geralmente muda a sintaxe da consulta na estrutura da sintaxe do método em tempo de compilação. Ele pode invocar o operador de consulta padrão como Where, Join, Max, Min, Avg, GroupBy Select e assim por diante. Você tem permissão para chamá-los diretamente, sem utilizar a sintaxe de consulta.

Passo 1: Na primeira etapa, temos que adicionar o namespace System.Linq no código.

 i.e., using System.Linq; 

Passo 2: Numa segunda etapa, temos que criar a fonte de dados sobre a qual devemos realizar as operações

 Ex: List list = new List() { ' Hii ', ' Welcome to JavaTpoint ', ' The topic is LINQ ' ' Any Queries ' }; 

Etapa 3: Agora crie a consulta usando os métodos fornecidos pelas classes estáticas Enumerable ou Queryable

 Ex: var r = list.Where(a=> a.Contains(' JavaTpoint ')); 

Aqui r é a variável de consulta que armazena o resultado da articulação da consulta. A cláusula form é utilizada para determinar a fonte de informação, ou seja, lista, onde a condição se aplica ao canal, ou seja, l.Contains(' Hii ') e a instrução select fornece o tipo de coisas trazidas de volta. Além disso, l é a variável de alcance.

Passo 4: A etapa final é executar a consulta usando o loop for each.

 EX: foreach(var i in r) { Console.WriteLine(i); } 

Programa de exemplo na sintaxe do método:

 // program to create LINQ query using Method syntax // step-1: Adding the System.Linq namespace in the code. using System; using System.Linq; using System.Collections.Generic; class HelloWorld { // Main Method static public void Main() { // Step-2: creating the data source on which we have to perform the operations List list = new List() { ' Hii JavaTpoint', ' Welcome to JavaTpoint ', ' The topic is LINQ ', ' Any Queries ' }; //step-3 creating the query using the methods provided by the Enumerable or Queryable static classes var r = list.Where(a=> a.Contains(' JavaTpoint ')); // In this will print only the sentence which contains JavaTpoint word // Executing LINQ Query using the for each loop foreach(var i in r) { Console.WriteLine(i); } } } 

Saída:

O que é LINQ

Vantagens do LINQ

  1. O cliente não precisa aprender novas linguagens de consulta para um tipo alternativo de formato de dados ou fonte de dados.
  2. Ele aumenta a clareza do código.
  3. A consulta pode ser reutilizada.
  4. Fornece verificação de tipo do objeto no momento da montagem.
  5. Dá IntelliSense às coleções convencionais.
  6. Ele tende a ser utilizado com coleções ou arrays.
  7. LINQ mantém ordenação, agrupamento, filtragem e classificação.
  8. Torna a depuração simples, pois é coordenada com a linguagem C#.
  9. Ele fornece alterações diretas, sugerindo que você pode, sem dúvida, alterar mais de um tipo de dados para outro tipo de dados, como alterar dados SQL em dados XML.