logo

Co je LINQ?

LINQ je známý jako Language Integrated Query a je prezentován v .NET 3.5 a Visual Studiu 2008. Excelentnost LINQ spočívá v tom, že umožňuje jazykům .NET (jako C#, VB.NET atd.) vytvářet dotazy obnovit informace ze zdroje informací. Program může například získat data ze záznamů o studiu nebo se dostat k záznamům pracovníků a tak dále. V předchozích letech byly takové informace umístěny v jiné sadě dat než aplikace a opravdu se chcete naučit různé druhy dotazovacího jazyka, abyste získali přístup k takovému druhu informací, jako je SQL, XML a tak dále. A navíc nemůžete položit otázku pomocí jazyka C# nebo jiného jazyka .NET.

výhody a nevýhody technologie

K překonání takových problémů vytvořil Microsoft LINQ. Připojuje ještě jednu kapacitu k dialektům C# nebo .NET a vytváří otázku pro jakýkoli životaschopný informační zdroj LINQ. A co víc, nejlepší na tom je, že struktura vět použitá k vytvoření otázky je podobná bez ohledu na to, jaký druh informačního zdroje se používá, což znamená, že gramatika dotazování na informace v sadě sociálních dat je stejná jako gramatika použitá k vytváření informací o otázkách. po uložení do klastru existuje přesvědčivý důvod, proč je potřeba použít SQL nebo nějakou jinou komponentu jazyka než .NET. LINQ můžete rovněž využít s SQL, s XML záznamy, s ADO.NET, s webovou administrací a s nějakou další informační bází.

V C# je LINQ k dispozici v System. Jmenný prostor Linq. Poskytuje různé druhy tříd a technik, které podporují otázky LINQ. V tomto jmenném prostoru:

  1. Třída Enumerable obsahuje standardní operátor dotazu, který pracuje na objektu, který spouští IEnumerable.
  2. Třída queryable obsahuje standardní administrátory dotazů, kteří pracují na objektu, který spouští IQueryable.

Například : SQL je strukturovaný dotazovací jazyk, který se používá k ukládání a obnově dat z databáze. Podobně je LINQ strukturou organizované věty dotazu. LINQ je základní C#. Používá se k obnově informací z různých druhů zdrojů, například XML, dokumenty, kolekce, ADO.Net DataSet, Web Service, MS SQL Server a různé databázové servery.

Co je LINQ

Použití LINQ

  1. Primárním důvodem pro vytvoření LINQ je, že před C# 3.0 jsme používali smyčku for, pro každou smyčku nebo delegáty k procházení kolekcí, abychom vystopovali konkrétní objekt, ale nevýhodou použití těchto strategií pro nalezení objektu je, že opravdu chcete vytvořte obrovské množství kódu, abyste našli objekt, což je navíc únavné a váš program bude méně přehledný. Abychom tyto problémy překonali, je představen LINQ, který odehrává podobnou aktivitu v několika množstvích řádků a činí váš kód jasným; navíc můžete podobný kód zapojit do různých projektů.
  2. Navíc poskytuje úplnou kontrolu řazení v době kompilace. Pomáhá nám s rozlišením chyb za běhu, takže je nepochybně můžeme odstranit.
  3. LINQ je přímočarý, velmi uspořádaný a jazyk na významné úrovni než SQL
  4. LINQ můžete také použít s polem a kolekcemi C#. Poskytuje vám další návod, jak se účinným způsobem postarat o staré problémy.
  5. S pomocí LINQ můžete bezpochyby pracovat se zdroji dat, jako jsou XML, SQL, entity, objekty a tak dále. Jediný dotaz může pracovat s databází, přesvědčivý důvod je potřeba se naučit různé druhy jazyků.
  6. LINQ podporuje výraz dotazu, anonymní typy, implicitně typované proměnné, výrazy lambda, inicializátory objektů a kolekcí a metody rozšíření.

LINQ dotazy můžeme použít dvěma způsoby

Struktura syntaxe dotazu LINQ se skládá z klíčových slov dotazu, která jsou charakterizována do ztvárnění .NET System 3.5 nebo vyšší. To umožňuje softwarovému inženýrovi nebo vývojářům skládat pokyny velmi podobně jako návrh SQL v kódu (C# nebo VB.NET) bez použití sazeb. Je to podobně známé ve světle skutečnosti, že otázka Artikulační gramatika. V LINQ můžete sestavit dotaz na informační zdroje IEnumerable nebo IQueryable s využitím následujících strategií:

1. Syntaxe dotazu:

Syntaxe dotazovacího jazyka LINQ začíná klíčovým slovem od a končí klíčovým slovem Select nebo GroupBy. Po klíčovém slově můžete využít různé druhy operací standardního dotazu, jako je seskupování, filtrování a tak dále, podle vaší potřeby. V LINQ je přístupných 50 jedinečných druhů správců standardních otázek.

Kroky pro zápis syntaxe Query:

Krok 1: V prvním kroku musíme do kódu přidat jmenný prostor System.Linq.

 i.e., using System.Linq; 

Krok 2: Ve druhém kroku musíme vytvořit zdroj dat, na kterém máme operace provádět

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

Krok 3: Ve třetím kroku musíme vytvořit dotaz na zdroj dat pomocí klíčového slova jako select, from atd.

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

Zde r je proměnná dotazu, která ukládá výsledek artikulace dotazu. Klauzule formuláře se používá k určení zdroje informací, tj. seznamu, kde podmínka platí pro kanál, tj. l.Contains('Hii') a příkaz select udává druh přinášených věcí. Dále je l proměnná dosahu.

Krok 4: Posledním krokem je provedení dotazu pomocí smyčky for every.

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

Příklad programu na syntaxi Query:

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

Výstup:

Co je LINQ

2. Syntaxe metody

V LINQ se syntaxe metody používá k volání metody rozšíření pro statické třídy Enumerable nebo Queryable. Nazývá se také Syntaxe rozšíření metody nebo Fluent. Nehledě na to, že kompilátor obecně změní syntaxi dotazu ve struktuře syntaxe metody v době kompilace. Může vyvolat standardní operátor Query jako Where, Join, Max, Min, Avg, GroupBy Select a tak dále. Můžete je volat přímočaře bez použití syntaxe Query.

Krok 1: V prvním kroku musíme do kódu přidat jmenný prostor System.Linq.

 i.e., using System.Linq; 

Krok 2: Ve druhém kroku musíme vytvořit zdroj dat, na kterém máme operace provádět

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

Krok 3: Nyní vytvořte dotaz pomocí metod poskytovaných statickými třídami Enumerable nebo Queryable

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

Zde r je proměnná dotazu, která ukládá výsledek artikulace dotazu. Klauzule formuláře se používá k určení zdroje informací, tj. seznamu, kde podmínka platí pro kanál, tj. l.Contains('Hii') a příkaz select udává druh přinášených věcí. Dále je l proměnná dosahu.

Krok 4: Posledním krokem je provedení dotazu pomocí smyčky for every.

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

Příklad programu o syntaxi metody:

nudný průměr
 // 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); } } } 

Výstup:

Co je LINQ

Výhody LINQ

  1. Klient se nemusí učit nové dotazovací jazyky pro alternativní typ formátu dat nebo zdroj dat.
  2. Zvyšuje srozumitelnost kódu.
  3. Dotaz lze znovu použít.
  4. Poskytuje kontrolu typu objektu v době montáže.
  5. Poskytuje IntelliSense konvenčním sbírkám.
  6. Obvykle se používá s kolekcemi nebo poli.
  7. LINQ podporuje řazení, seskupování, filtrování a řazení.
  8. Díky tomu je ladění jednoduché, protože je koordinováno s jazykem C#.
  9. Poskytuje přímou změnu, která naznačuje, že můžete bez pochyby změnit více než jeden datový typ na jiný datový typ, jako je změna dat SQL na data XML.