logo

Co to jest LINQ?

LINQ jest znany jako Language Integrated Query i jest prezentowany w .NET 3.5 i Visual Studio 2008. Doskonałość LINQ polega na tym, że zapewnia językom .NET (takim jak C#, VB.NET itd.) tworzenie zapytań do odzyskać informacje ze źródła informacji. Na przykład program może uzyskać dane z rekordów dublerów lub uzyskać dostęp do rekordów pracowników i tak dalej. W poprzednich latach tego rodzaju informacje były umieszczane w innym zestawie danych niż aplikacja, a naprawdę warto nauczyć się różnych rodzajów języka pytań, aby uzyskać dostęp do tego rodzaju informacji, takich jak SQL, XML i tak dalej. Co więcej, nie możesz zadać pytania, używając języka C# lub innego języka .NET.

liczba całkowita podwójna Java

Aby pokonać tego typu problemy, Microsoft stworzył LINQ. Łączy jeszcze jedną zdolność z dialektami C# lub .NET, tworząc pytanie do dowolnego realnego źródła informacji LINQ. Co więcej, najlepsze jest to, że struktura zdań użyta do zadawania pytań jest podobna niezależnie od tego, z jakiego źródła informacji się korzysta, co oznacza, że ​​gramatyka zadawania pytań o informacje w zbiorze danych społecznościowych jest taka sama, jak gramatyka używana do tworzenia informacji o pytaniach przechowywanych w klastrze, istnieje istotny powód, dla którego należy wykorzystać SQL lub inny komponent języka innego niż .NET. Można również używać LINQ z SQL, z rekordami XML, z ADO.NET, z administracją sieciową i z inną bazą informacji.

W języku C# LINQ jest dostępny w System. Przestrzeń nazw Linq. Daje różne rodzaje klas i technik, które podtrzymują pytania LINQ. W tej przestrzeni nazw:

  1. Klasa Enumerable zawiera standardowy operator zapytania, który działa na obiekcie, który wykonuje IEnumerable.
  2. Klasa podlegająca zapytaniom zawiera standardowych administratorów zapytań, którzy pracują na obiekcie, który wykonuje IQueryable.

Na przykład : SQL to ustrukturyzowany język zapytań używany do zapisywania i odzyskiwania danych z bazy danych. Podobnie LINQ jest strukturą zorganizowanego zdania zapytania. LINQ to podstawowy C#. Służy do odzyskiwania informacji z różnych źródeł, na przykład XML, dokumentów, kolekcji, ADO.Net DataSet, usług sieciowych, MS SQL Server i różnych serwerów baz danych.

Co to jest LINQ

Zastosowania LINQ

  1. Głównym powodem tworzenia LINQ jest to, że przed C# 3.0 używaliśmy pętli for każdej pętli lub delegatów do przeglądania kolekcji w celu wyśledzenia konkretnego obiektu, jednak szkodliwością stosowania tych strategii wyszukiwania obiektu jest to, że naprawdę chcesz skomponuj ogromną ilość kodu, aby znaleźć obiekt, który jest dodatkowo nudny i sprawia, że ​​Twój program jest mniej przejrzysty. Aby rozwiązać te problemy, zaprezentowano LINQ, który wykonuje podobne działanie w kilku liniach i sprawia, że ​​kod jest przejrzysty; ponadto możesz zaangażować podobny kod w różne projekty.
  2. Dodatkowo zapewnia pełne sprawdzanie sortowania w czasie kompilacji. Pomaga nam to w rozróżnieniu błędów w czasie wykonywania, dzięki czemu niewątpliwie możemy je wyeliminować.
  3. LINQ jest prostym, bardzo uporządkowanym językiem o znaczącym poziomie niż SQL
  4. Możesz również używać LINQ z tablicą i kolekcjami C#. Zawiera kolejne wskazówki, jak w skuteczny sposób zająć się starymi problemami.
  5. Przy pomocy LINQ niewątpliwie możesz pracować ze źródłami danych, takimi jak XML, SQL, Entities, obiekty i tak dalej. Pojedyncze zapytanie może współpracować z bazą danych, dlatego ważne jest, aby nauczyć się różnych języków.
  6. LINQ obsługuje wyrażenia zapytania, typy anonimowe, zmienne o typie niejawnym, wyrażenia Lambda, inicjatory obiektów i kolekcji oraz metody rozszerzeń.

Zapytań LINQ możemy używać na dwa sposoby

Struktura składni zapytań LINQ składa się ze słów kluczowych zapytań, które charakteryzują się wersją systemu .NET 3.5 lub wyższą. Pozwala to inżynierowi oprogramowania lub programistom na komponowanie wskazówek bardzo przypominających projekt SQL w kodzie (C# lub VB.NET) bez stosowania stawek. Jest to w podobny sposób znane w świetle faktu, że gramatyka artykulacji pytań. W LINQ możesz skomponować zapytanie do serii IEnumerable lub źródeł informacji IQueryable, korzystając z następujących strategii:

1. Składnia zapytania:

Składnia języka zapytań LINQ zaczyna się od słowa kluczowego i kończy słowem kluczowym Select lub GroupBy. Po słowie kluczowym możesz korzystać z różnych rodzajów operacji na zapytaniach standardowych, takich jak grupowanie, filtrowanie itd., w zależności od potrzeb. W LINQ dostępnych jest 50 unikalnych rodzajów standardowych administratorów pytań.

Kroki pisania składni zapytania:

Krok 1: W pierwszym kroku musimy dodać w kodzie przestrzeń nazw System.Linq.

 i.e., using System.Linq; 

Krok 2: W drugim kroku musimy stworzyć źródło danych, na którym będziemy musieli wykonać operacje

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

Krok 3: W trzecim kroku musimy utworzyć zapytanie o źródło danych za pomocą słowa kluczowego, takiego jak wybierz, z itp.

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

Tutaj r jest zmienną zapytania, która przechowuje wynik artykulacji zapytania. Klauzula form służy do określenia źródła informacji, czyli listy, gdzie warunek dotyczy kanału, czyli l.Contains(' Hii '), a instrukcja select podaje rodzaj przywożonych rzeczy. Ponadto l jest zmienną zasięgu.

Krok 4: Ostatnim krokiem jest wykonanie zapytania za pomocą pętli for each.

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

Przykładowy program dotyczący składni zapytania:

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

Wyjście:

Co to jest LINQ

2. Składnia metody

W LINQ składnia metody jest używana do wywoływania metody rozwijania klas statycznych Enumerable lub Queryable. Nazywa się to również składnią rozszerzenia metody lub płynną. Niezależnie od tego kompilator zazwyczaj zmienia składnię zapytania w strukturze składni metody w czasie kompilacji. Może przywołać standardowy operator zapytania, taki jak Where, Join, Max, Min, Avg, GroupBy Select i tak dalej. Możesz je wywoływać bezpośrednio, bez użycia składni Query.

Krok 1: W pierwszym kroku musimy dodać w kodzie przestrzeń nazw System.Linq.

 i.e., using System.Linq; 

Krok 2: W drugim kroku musimy stworzyć źródło danych, na którym będziemy musieli wykonać operacje

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

Krok 3: Teraz utwórz zapytanie, korzystając z metod dostarczonych przez klasy statyczne Enumerable lub Queryable

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

Tutaj r jest zmienną zapytania, która przechowuje wynik artykulacji zapytania. Klauzula form służy do określenia źródła informacji, czyli listy, gdzie warunek dotyczy kanału, czyli l.Contains(' Hii '), a instrukcja select podaje rodzaj przywożonych rzeczy. Ponadto l jest zmienną zasięgu.

Krok 4: Ostatnim krokiem jest wykonanie zapytania za pomocą pętli for each.

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

Przykładowy program dotyczący składni metody:

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

Wyjście:

Co to jest LINQ

Zalety LINQ

  1. Klient nie musi uczyć się nowych języków zapytań dla alternatywnego typu formatu danych lub źródła danych.
  2. Zwiększa przejrzystość kodu.
  3. Zapytanie można wykorzystać ponownie.
  4. Umożliwia sprawdzenie typu obiektu w czasie montażu.
  5. Zapewnia technologię IntelliSense konwencjonalnym zbiorom.
  6. Zwykle jest używany z kolekcjami lub tablicami.
  7. LINQ obsługuje porządkowanie, grupowanie, filtrowanie i sortowanie.
  8. Dzięki temu debugowanie jest proste, ponieważ jest skoordynowane z językiem C#.
  9. Daje prostą zmianę, sugerując, że bez wątpienia możesz zmienić więcej niż jeden typ danych na inny typ danych, na przykład zmieniając dane SQL na dane XML.