logo

Какво е LINQ?

LINQ е известен като Language Integrated Query и е представен в .NET 3.5 и Visual Studio 2008. Превъзходството на LINQ е, че дава капацитет на .NET езици (като C#, VB.NET и т.н.) да създават запитвания до възстановяване на информация от източника на информация. Например, една програма може да получи данни от записите на заместник или да стигне до записи на работници и т.н. В предишни години такъв вид информация се поставяше в различен набор от данни от приложението и вие наистина искате да научите различни видове език за въпроси, за да получите достъп до такъв вид информация като SQL, XML и т.н. И освен това, не можете да зададете въпрос, използвайки език C# или някакъв друг .NET език.

пълна форма на i d e

За да преодолее подобни проблеми, Microsoft създаде LINQ. Той свързва още един капацитет с диалектите C# или .NET, за да създаде въпрос за всеки жизнеспособен LINQ източник на информация. Нещо повече, най-добрата част е, че структурата на изречението, използвана за създаване на въпрос, е подобна, независимо от това кой вид източник на информация се използва, което означава, че граматиката на отправяне на запитване за информация в набор от социални данни е същата като тази, използвана за създаване на информация за въпроси поставени в клъстер, има убедителна причина да се наложи да се използва SQL или някакъв друг езиков компонент, който не е .NET. Можете също така да използвате LINQ със SQL, с XML записи, с ADO.NET, с уеб администрации и с някои други информационни бази.

В C# LINQ е наличен в System. Пространство от имена на Linq. Той дава различни видове класове и техники, които поддържат LINQ въпроси. В това пространство от имена:

  1. Класът Enumerable съдържа стандартен оператор на заявка, който работи върху обект, който изпълнява IEnumerable.
  2. Класът queryable съдържа стандартни администратори на запитвания, които работят върху обект, който изпълнява IQueryable.

Например : SQL е структуриран език за заявки, който се използва за запазване и възстановяване на данни от базата данни. По същия начин LINQ е структура на организирано изречение за заявка. LINQ е основният C#. Използва се за възстановяване на информация от различни видове източници, например XML, документи, колекции, ADO.Net DataSet, уеб услуга, MS SQL Server и различни сървъри на бази данни.

Какво е LINQ

Използване на LINQ

  1. Основната причина зад създаването на LINQ е, че преди C# 3.0 използвахме for цикъл, за всеки цикъл или делегати за преминаване през колекция, за да проследим определен обект, но вредата от включването на тези стратегии за намиране на обект е, че наистина искате да съставете огромно количество код, за да намерите обект, който е допълнително досаден и прави програмата ви по-малко ясна. За да се преодолеят тези проблеми, е представен LINQ, който изпълнява подобна дейност в няколко реда и прави кода ви ясен; освен това можете да включите подобен код в различни проекти.
  2. Освен това дава пълна проверка на сортирането по време на компилиране. Той ни помага да разграничим грешката по време на изпълнение, така че несъмнено можем да ги елиминираме.
  3. LINQ е ясен, много подреден и език на значително ниво от SQL
  4. Можете също така да използвате LINQ с C# масив и колекции. Той ви предоставя още едно ръководство за справяне със старите проблеми по мощен начин.
  5. С помощта на LINQ несъмнено можете да работите с източник на данни като XML, SQL, обекти, обекти и т.н. Една единствена заявка може да работи с базата данни, убедителна причина трябва да научите различни видове езици.
  6. LINQ поддържа израз на заявка, анонимни типове, имплицитно въведени променливи, ламбда изрази, инициализатори на обект и колекция и методи за разширение.

Можем да използваме LINQ заявки по два начина

Структурата на синтаксиса на LINQ заявка се състои от ключови думи на заявка, които се характеризират в предаването на .NET System 3.5 или по-високо. Това позволява на софтуерния инженер или разработчиците да съставят указанията много подобно на SQL дизайна в кода (C# или VB.NET) без използването на тарифи. По подобен начин е известно в светлината на факта, че въпросната артикулационна граматика. В LINQ можете да съставите запитването към IEnumerable series или IQueryable източници на информация, като използвате следващите стратегии:

1. Синтаксис на заявката:

Синтаксисът на езика за заявки LINQ започва с ключовата дума from и завършва с ключовата дума Select или GroupBy. След ключовата дума от можете да използвате различни видове операции със стандартна заявка като групиране, филтриране и т.н., както е посочено от вашите нужди. В LINQ са достъпни 50 уникални вида администратори на стандартни въпроси.

Стъпки за писане на синтаксиса на заявката:

Етап 1: В първата стъпка трябва да добавим пространството от имена System.Linq в кода.

 i.e., using System.Linq; 

Стъпка 2: Във втора стъпка трябва да създадем източника на данни, върху който трябва да извършим операциите

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

Стъпка-3: В третата стъпка трябва да създадем заявката за източника на данни, като използваме ключова дума като select, from и т.н.

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

Тук r е променливата на заявката, която съхранява резултата от артикулацията на заявката. Клаузата за формуляр се използва за определяне на източника на информация, т.е. списък, където условието се прилага към канала, т.е. l.Contains(' Hii ') и операторът select дава вида на върнатите неща. Освен това l е променливата на обхвата.

Стъпка-4: Последната стъпка е да изпълните заявката, като използвате цикъла за всеки.

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

Примерна програма за синтаксис на заявка:

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

Изход:

java чете файл ред по ред
Какво е LINQ

2. Синтаксис на метода

В LINQ синтаксисът на метода се използва за извикване на метода за разширяване за статичните класове Enumerable или Queryable. Нарича се още Синтаксис на разширението на метода или Fluent. Независимо от това, компилаторът обикновено променя синтаксиса на заявката в структурата на синтаксиса на метода по време на компилиране. Той може да извика стандартния оператор на заявка като Where, Join, Max, Min, Avg, GroupBy Select и т.н. Имате право да ги извиквате директно, без да използвате синтаксиса на заявката.

Етап 1: В първата стъпка трябва да добавим пространството от имена System.Linq в кода.

 i.e., using System.Linq; 

Стъпка 2: Във втора стъпка трябва да създадем източника на данни, върху който трябва да извършим операциите

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

Стъпка-3: Сега създайте заявката, като използвате методите, предоставени от статичните класове Enumerable или Queryable

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

Тук r е променливата на заявката, която съхранява резултата от артикулацията на заявката. Клаузата за формуляр се използва за определяне на източника на информация, т.е. списък, където условието се прилага към канала, т.е. l.Contains(' Hii ') и операторът select дава вида на върнатите неща. Освен това l е променливата на обхвата.

Стъпка-4: Последната стъпка е да изпълните заявката, като използвате цикъла за всеки.

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

Примерна програма за синтаксис на метода:

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

Изход:

Какво е LINQ

Предимства на LINQ

  1. Клиентът не трябва да учи нови езици за заявки за алтернативен тип формат на данни или източник на данни.
  2. Това увеличава яснотата на кода.
  3. Заявката може да се използва повторно.
  4. Той дава проверка на типа на обекта по време на асемблиране.
  5. Той дава IntelliSense на конвенционалните колекции.
  6. Склонен е да се използва с колекции или масиви.
  7. LINQ поддържа подреждане, групиране, филтриране и сортиране.
  8. Това прави отстраняването на грешки лесно, тъй като е координирано с езика C#.
  9. Той дава директна промяна, което предполага, че без съмнение можете да промените повече от един тип данни в друг тип данни, като промяна на SQL данни в XML данни.