logo

Hvad er LINQ?

LINQ er kendt som Language Integrated Query, og det præsenteres i .NET 3.5 og Visual Studio 2008. LINQ's fortræffelighed er, at det giver kapacitet til .NET-sprog (som C#, VB.NET og så videre) til at oprette forespørgsler til gendanne oplysninger fra informationskilden. For eksempel kan et program hente data fra undersøgelsesregistrene eller komme til arbejderregistreringer og så videre. I tidligere år blev sådan information lagt væk i et andet datasæt end applikationen, og du vil virkelig gerne lære forskellige slags spørgsmålssprog for at få adgang til sådanne informationer som SQL, XML og så videre. Og desuden kan du ikke lave et spørgsmål ved at bruge C#-sprog eller et andet .NET-sprog.

manuel test

For at overvinde sådanne problemer oprettede Microsoft LINQ. Den forbinder endnu en kapacitet til C#- eller .NET-dialekterne for at skabe et spørgsmål til enhver LINQ-levedygtig informationskilde. Hvad mere er, det bedste er, at sætningsstrukturen, der bruges til at lave et spørgsmål, er ens, uanset hvilken type informationskilde, der bruges, betyder, at grammatikken ved at lave en forespørgsel om information i et socialt datasæt er den samme som den, der bruges til at lave spørgsmålsinformation lægges væk i en klynge er der tvingende grund til at bruge SQL eller en anden ikke-.NET sprogkomponent. Du kan ligeledes bruge LINQ med SQL, med XML-poster, med ADO.NET, med webadministrationer og med en anden informationsbase.

I C# er LINQ tilgængelig i System. Linq navneområde. Det giver forskellige slags klasser og teknikker, som opretholder LINQ-spørgsmål. I dette navneområde:

  1. Klassen Enumerable indeholder en standard forespørgselsoperator, der virker på et objekt, der udfører IEnumerable.
  2. Den forespørgbare klasse indeholder standardforespørgselsadministratorer, der arbejder på et objekt, der udfører IQueryable.

For eksempel : SQL er et struktureret forespørgselssprog, der bruges til at gemme og genskabe data fra databasen. Ligeledes er LINQ en organiseret forespørgselssætningsstruktur. LINQ er den grundlæggende C#. Det bruges til at gendanne information fra forskellige slags kilder, for eksempel XML, docs, samlinger, ADO.Net DataSet, Web Service, MS SQL Server og forskellige databaseservere.

Hvad er LINQ

Anvendelser af LINQ

  1. Den primære årsag til at lave LINQ er, før C# 3.0, vi brugte til loop, for hver loop, eller delegerede til at krydse en samling for at spore et bestemt objekt, men ulempen ved at involvere disse strategier til at finde et objekt er, at du virkelig ønsker at komponer en enorm mængde kode for at finde et objekt, som er ekstra kedeligt og gøre dit program mindre overskueligt. Så for at besejre disse problemer, præsenteres LINQ, som udspiller lignende aktivitet i et par mængder af linjer og gør din kode klar; desuden kan du inddrage lignende kode i forskellige projekter.
  2. Det giver desuden fuld sorteringskontrol på kompileringstidspunktet. Det hjælper os med at skelne fejlen under kørsel, så vi uden tvivl kan eliminere dem.
  3. LINQ er, at det er ligetil, meget arrangeret og sprog på et betydeligt niveau end SQL
  4. Du kan også bruge LINQ med C#-array og samlinger. Det giver dig endnu en vejledning til at tage hånd om de gamle problemer på en kraftfuld måde.
  5. Med hjælp fra LINQ kan du uden tvivl arbejde med en datakilde som XML, SQL, entiteter, objekter og så videre. En enkelt forespørgsel kan arbejde med databasen, og det er derfor nødvendigt at lære forskellige slags sprog.
  6. LINQ opretholder forespørgselsudtryk, anonyme typer, implicit indtastede variable, lambdaudtryk, initialisering af objekter og samlinger og udvidelsesmetoder.

Vi kan bruge LINQ-forespørgsler på to måder

LINQ-forespørgselssyntaksstrukturen består af forespørgselsnøgleord, som er karakteriseret i .NET System-gengivelsen 3.5 eller højere. Dette gør det muligt for softwareingeniøren eller udviklerne at komponere retningerne meget ligesom SQL-design i koden (C# eller VB.NET) uden brug af satser. Det er på samme måde kendt i lyset af, at Spørgsmålets Artikulationsgrammatik. I LINQ kan du sammensætte forespørgslen til IEnumerable serier eller IQueryable informationskilder ved at bruge de efterfølgende strategier:

1. Forespørgselssyntaks:

LINQ-forespørgselssprogets syntaks starter med fra nøgleordet og slutter med nøgleordet Vælg eller GroupBy. Efter fra nøgleordet kan du bruge forskellige slags standardforespørgselsoperationer som gruppering, filtrering og så videre, som angivet af dit behov. I LINQ er 50 unikke typer standardspørgsmålsadministratorer tilgængelige.

Trin til at skrive forespørgselssyntaksen:

Trin 1: I det første trin skal vi tilføje System.Linq-navneområdet i koden.

 i.e., using System.Linq; 

Trin-2: I et andet trin skal vi oprette den datakilde, som vi skal udføre operationerne på

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

Trin-3: I det tredje trin skal vi oprette forespørgslen til datakilden ved hjælp af et nøgleord som vælg, fra osv.

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

Her er r den forespørgselsvariabel, der gemmer resultatet af forespørgselsartikulationen. Formklausulen bruges til at bestemme informationskilden, dvs. listen, hvor betingelsen gælder for kanalen, dvs. l.Contains('Hii') og udvælgelseserklæringen giver typen af ​​de bragte ting tilbage. Desuden er l rækkeviddevariablen.

Trin-4: Det sidste trin er at udføre forespørgslen ved hjælp af for hver løkke.

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

Eksempelprogram på forespørgselssyntaks:

 // 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); } } } 

Produktion:

Hvad er LINQ

2. Metodesyntaks

I LINQ bruges metodesyntaks til at kalde udvidelsesmetoden for de statiske klasser Enumerable eller Queryable. Det kaldes også Method Extension Syntax eller Fluent. Ikke desto mindre ændrer compileren generelt forespørgselssyntaksen i metodesyntaksstrukturen på kompileringstidspunktet. Den kan kalde standardforespørgselsoperatoren som Where, Join, Max, Min, Avg, GroupBy Select, og så videre. Du har tilladelse til at kalde dem ligetil uden at bruge forespørgselssyntaks.

Trin 1: I det første trin skal vi tilføje System.Linq-navneområdet i koden.

 i.e., using System.Linq; 

Trin-2: I et andet trin skal vi oprette den datakilde, som vi skal udføre operationerne på

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

Trin-3: Opret nu forespørgslen ved hjælp af de metoder, der leveres af de statiske klasser Enumerable eller Queryable

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

Her er r den forespørgselsvariabel, der gemmer resultatet af forespørgselsartikulationen. Formklausulen bruges til at bestemme informationskilden, dvs. listen, hvor betingelsen gælder for kanalen, dvs. l.Contains('Hii') og udvælgelseserklæringen giver typen af ​​de bragte ting tilbage. Desuden er l rækkeviddevariablen.

ændre fil linux

Trin-4: Det sidste trin er at udføre forespørgslen ved hjælp af for hver løkke.

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

Eksempel program om metodesyntaks:

 // 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); } } } 

Produktion:

Hvad er LINQ

Fordele ved LINQ

  1. Klienten behøver ikke at lære nye forespørgselssprog for en alternativ type dataformat eller datakilde.
  2. Det øger kodens klarhed.
  3. Forespørgslen kan genbruges.
  4. Det giver typekontrol af objektet på samlingstidspunktet.
  5. Det giver IntelliSense til konventionelle samlinger.
  6. Det har en tendens til at blive brugt med samlinger eller arrays.
  7. LINQ opretholder bestilling, gruppering, filtrering og sortering.
  8. Det gør fejlfinding enkel, da den er koordineret med C#-sproget.
  9. Det giver ligetil ændring, hvilket antyder, at du uden tvivl kan ændre mere end én datatype til en anden datatype, som at ændre SQL-data til XML-data.