logo

Mi az a LINQ?

A LINQ nyelvi integrált lekérdezés néven ismert, és a .NET 3.5 és a Visual Studio 2008 tartalmazza. A LINQ kiválósága abban rejlik, hogy lehetőséget ad a .NET nyelveknek (például C#, VB.NET stb.) lekérdezések létrehozására információk visszaszerzése az információforrásból. Például egy program adatokat kaphat a vizsgálati rekordokból vagy elérheti a dolgozói rekordokat, és így tovább. A korábbi években az ilyen jellegű információkat az alkalmazástól eltérő adathalmazba helyezték el, és nagyon szeretne megtanulni különféle kérdésnyelveket, hogy hozzáférjen az ilyen jellegű információkhoz, például SQL, XML stb. Ráadásul nem tehet fel kérdést C# vagy más .NET nyelv használatával.

programozás c tömbökben

Az ilyen jellegű problémák leküzdésére a Microsoft létrehozta a LINQ-t. Még egy kapacitást csatlakoztat a C# vagy .NET dialektusokhoz, hogy kérdéseket hozzon létre bármely LINQ használható információforráshoz. Sőt, a legjobb az egészben az, hogy a kérdés felállításához használt mondatszerkezet hasonló, függetlenül attól, hogy milyen információforrást használnak, ami azt jelenti, hogy a közösségi adathalmazban lévő információkra vonatkozó lekérdezés nyelvtana ugyanaz, mint a kérdésinformáció elkészítéséhez. fürtbe helyezve nyomós indok van az SQL vagy más nem .NET nyelvi összetevő használatára. Hasonlóképpen használhatja a LINQ-t SQL-lel, XML rekordokkal, ADO.NET-el, webadminisztrációkkal és más információs bázisokkal.

A C# nyelven a LINQ elérhető a Rendszerben. Linq névtér. Különféle osztályokat és technikákat ad, amelyek támogatják a LINQ kérdéseket. Ebben a névtérben:

  1. Az Enumerable osztály egy szabványos lekérdezési operátort tartalmaz, amely olyan objektumon működik, amely végrehajtja az IEnumerable-t.
  2. A lekérdezhető osztály szabványos lekérdezési rendszergazdákat tartalmaz, amelyek az IQueryable-t végrehajtó objektumon dolgoznak.

Például : Az SQL egy strukturált lekérdezési nyelv, amelyet az adatok mentésére és az adatbázisból való visszanyerésére használnak. Hasonlóképpen, a LINQ egy szervezett lekérdezési mondatszerkezet. A LINQ az alap C#. Különféle forrásokból, például XML-ből, dokumentumokból, gyűjteményekből, ADO.Net DataSet-ből, Web Service-ből, MS SQL Serverből és különböző adatbázis-kiszolgálókból származó információk helyreállítására szolgál.

Mi az a LINQ

A LINQ felhasználási területei

  1. A LINQ elkészítésének elsődleges oka az, hogy a C# 3.0 előtt a ciklushoz használtuk az egyes ciklusokat vagy a delegátusokat, hogy bejárjanak egy gyűjteményt egy adott objektum felkutatása érdekében, de ennek a stratégiának az objektum megtalálásához való bevonásának rovására van szükség Hatalmas mennyiségű kód összeállítása, hogy megtaláljon egy olyan objektumot, amely még fárasztó, és kevésbé átláthatóvá teszi a programot. Tehát, hogy ezeket a problémákat leküzdjük, bemutatásra kerül a LINQ, amely néhány sornyi mennyiségben hasonló tevékenységet hajt végre, és egyértelművé teszi a kódot; emellett hasonló kódot is bevonhat különböző projektekbe.
  2. Ezenkívül teljes rendezési ellenőrzést biztosít a fordítási időben. Segít a hiba futás közbeni megkülönböztetésében, így kétségtelenül ki tudjuk küszöbölni azokat.
  3. A LINQ egyszerű, nagyon jól elrendezett és jelentős szintű nyelv, mint az SQL
  4. Hasonlóképpen használhatja a LINQ-t C# tömbökkel és gyűjteményekkel. Újabb útmutatást ad a régi problémák hatékony kezeléséhez.
  5. A LINQ segítségével kétségtelenül dolgozhat olyan adatforrásokkal, mint az XML, SQL, entitások, objektumok és így tovább. Egyetlen lekérdezés is működhet az adatbázissal, nyomós ok, hogy különféle nyelveket kell megtanulni.
  6. A LINQ fenntartja a lekérdezési kifejezéseket, az anonim típusokat, az implicit módon beírt változókat, a lambda-kifejezéseket, az objektum- és gyűjteményinicializálókat és a kiterjesztési metódusokat.

A LINQ lekérdezéseket kétféleképpen használhatjuk

LINQ lekérdezés A szintaktikai struktúra olyan lekérdezési kulcsszavakból áll, amelyeket a .NET System 3.5-ös vagy újabb verziója jellemez. Ez lehetővé teszi a szoftvermérnökök vagy a fejlesztők számára, hogy az SQL-tervezéshez hasonlóan a kódban (C# vagy VB.NET) állítsák össze az utasításokat, díjak használata nélkül. Hasonlóképpen ismert annak fényében, hogy a Kérdés Artikulációs Nyelvtan. A LINQ-ban összeállíthatja a lekérdezést IEnumerable sorozatok vagy IQueryable információforrások számára a következő stratégiák felhasználásával:

1. Lekérdezés szintaxisa:

A LINQ lekérdezési nyelv szintaxisa a kulcsszóval kezdődik, és a Select vagy GroupBy kulcsszóval fejeződik be. A from kulcsszó után különféle szabványos lekérdezési műveleteket használhat, például csoportosítást, szűrést és így tovább, az igényeknek megfelelően. A LINQ-ban 50 egyedi típusú Standard Question Administrator érhető el.

A lekérdezés szintaxisának megírásának lépései:

1. lépés: Első lépésben a System.Linq névteret kell hozzáadnunk a kódhoz.

 i.e., using System.Linq; 

2. lépés: Második lépésben létre kell hoznunk azt az adatforrást, amelyen a műveleteket el kell végeznünk

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

3. lépés: A harmadik lépésben létre kell hoznunk az adatforrás lekérdezését olyan kulcsszó használatával, mint a select, from stb.

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

Itt r a lekérdezési változó, amely a lekérdezés artikulációjának eredményét tárolja. A form záradékkal határozzuk meg az információforrást, azaz a listát, ahol a feltétel vonatkozik a csatornára, azaz az l.Contains('Hii') és a select utasítás megadja a visszahozott dolgok fajtáját. Továbbá l az elérési változó.

4. lépés: Az utolsó lépés a lekérdezés végrehajtása az egyes ciklusokhoz.

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

Példaprogram a Query szintaxishoz:

szegmentációs hiba mag kidobva
 // 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); } } } 

Kimenet:

Mi az a LINQ

2. Módszer szintaxisa

A LINQ-ban a Method Syntax a felsorolható vagy lekérdezhető statikus osztályok bővítési metódusának meghívására szolgál. Más néven Method Extension Syntax vagy Fluent. Ennek ellenére a fordító általában megváltoztatja a lekérdezés szintaxisát a metódus szintaktikai struktúrájában a fordítási időben. Meg tudja hívni a szabványos lekérdezés operátort, mint például a Hol, Join, Max, Min, Avg, GroupBy Select és így tovább. Megengedheti, hogy közvetlenül hívja őket, a Query szintaxis használata nélkül.

1. lépés: Első lépésben a System.Linq névteret kell hozzáadnunk a kódhoz.

 i.e., using System.Linq; 

2. lépés: Második lépésben létre kell hoznunk azt az adatforrást, amelyen a műveleteket el kell végeznünk

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

3. lépés: Most hozza létre a lekérdezést az Enumerable vagy Queryable statikus osztályok által biztosított metódusokkal

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

Itt r a lekérdezési változó, amely a lekérdezés artikulációjának eredményét tárolja. A form záradékkal határozzuk meg az információforrást, azaz a listát, ahol a feltétel vonatkozik a csatornára, azaz az l.Contains('Hii') és a select utasítás megadja a visszahozott dolgok fajtáját. Továbbá l az elérési változó.

4. lépés: Az utolsó lépés a lekérdezés végrehajtása az egyes ciklusokhoz.

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

Példa program a Method szintaxisra:

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

Kimenet:

Mi az a LINQ

A LINQ előnyei

  1. Az ügyfélnek nem kell új lekérdezési nyelveket tanulnia egy másik típusú adatformátumhoz vagy adatforráshoz.
  2. Növeli a kód tisztaságát.
  3. A lekérdezés újra felhasználható.
  4. Típusellenőrzést ad az objektumnak összeszereléskor.
  5. IntelliSense-t ad a hagyományos gyűjteményekhez.
  6. Általában gyűjteményekkel vagy tömbökkel használják.
  7. A LINQ támogatja a rendezést, csoportosítást, szűrést és rendezést.
  8. Egyszerűvé teszi a hibakeresést, mivel a C# nyelvvel van összehangolva.
  9. Ez egyértelmű változtatást ad, ami azt sugallja, hogy kétségtelenül több adattípust is módosíthat másik adattípusra, például az SQL-adatokat XML-adatokká.