ЛИНК је познат као Лангуаге Интегратед Куери и представљен је у .НЕТ 3.5 и Висуал Студио 2008. Изврсност ЛИНК-а је што даје капацитет .НЕТ језицима (као што су Ц#, ВБ.НЕТ и тако даље) да креирају упите за повратити информације из извора информација. На пример, програм би могао да добије податке из евиденције полазника или да дође до евиденције радника и тако даље. Претходних година, таква врста информација се налази у другом скупу података из апликације, и заиста желите да научите различите врсте језика питања да бисте приступили таквој врсти информација као што су СКЛ, КСМЛ и тако даље. Штавише, не можете поставити питање користећи Ц# језик или неки други .НЕТ језик.
шта је руковање изузецима у Јави
Да би победио такве врсте проблема, Мицрософт је креирао ЛИНК. Повезује још један капацитет са Ц# или .НЕТ дијалектима како би креирао питање за било који ЛИНК извор информација. Штавише, најбољи део је да је структура реченице која се користи за постављање питања слична без обзира на то који се извор информација користи, што значи да је граматика постављања упита о информацијама у скупу друштвених података иста као она која се користи за прављење информација о питању одложити у кластер постоји убедљив разлог да се користи СКЛ или нека друга компонента језика која није .НЕТ. Такође можете да користите ЛИНК са СКЛ-ом, са КСМЛ записима, са АДО.НЕТ-ом, са веб администрацијама и са неком другом базом података.
У Ц#, ЛИНК је доступан у систему. Линк именски простор. Даје различите врсте класа и техника које подржавају ЛИНК питања. У овом именском простору:
- Класа Енумерабле садржи стандардни оператор упита који ради на објекту који извршава ИЕнумерабле.
- Класа куериабле садржи стандардне администраторе упита који раде на објекту који извршава ИКуериабле.
На пример : СКЛ је језик структурираних упита који се користи за чување и обнављање података из базе података. Исто тако, ЛИНК је структура организоване реченице упита. ЛИНК је основни Ц#. Користи се за опоравак информација из различитих врста извора, на пример, КСМЛ, документи, колекције, АДО.Нет ДатаСет, Веб Сервице, МС СКЛ Сервер и различити сервери база података.
Употреба ЛИНК-а
- Примарни разлог за прављење ЛИНК-а је, пре Ц# 3.0, користили смо фор петљу, за сваку петљу или делегате да пређу колекцију да бисмо пронашли одређени објекат, али штета укључивања ових стратегија за проналажење објекта је што заиста желите да саставите огромну количину кода да бисте пронашли објекат који је додатно заморан и да ваш програм учини мање луцидним. Да бисмо решили ове проблеме, представљен је ЛИНК, који изводи сличну активност у неколико количина линија и чини ваш код јасним; штавише, можете укључити сличан код у различите пројекте.
- Додатно даје потпуну проверу сортирања у време компајлирања. Помаже нам у разликовању грешака у току рада, тако да их несумњиво можемо елиминисати.
- ЛИНК је једноставан, веома уређен и језик значајног нивоа од СКЛ-а
- Такође можете да користите ЛИНК са Ц# низом и колекцијама. Пружа вам још један водич да се на моћан начин бринете о старим проблемима.
- Уз помоћ ЛИНК-а, несумњиво можете да радите са изворима података као што су КСМЛ, СКЛ, ентитети, објекти и тако даље. Један упит може да ради са базом података, што је убедљиво због потребе за учењем разних врста језика.
- ЛИНК подржава израз упита, анонимне типове, имплицитно откуцане променљиве, ламбда изразе, иницијализаторе објеката и колекције и методе проширења.
ЛИНК упите можемо користити на два начина
Структура синтаксе упита ЛИНК састоји се од кључних речи за упите које су окарактерисане у .НЕТ системској верзији 3.5 или новијој. Ово омогућава софтверском инжењеру или програмерима да саставе упутства која су веома слична СКЛ дизајну у коду (Ц# или ВБ.НЕТ) без коришћења стопа. То је на сличан начин познато у светлу чињенице да Граматика артикулације питања. У ЛИНК-у можете саставити упит за ИЕнумерабле серије или ИКуериабле изворе информација користећи следеће стратегије:
1. Синтакса упита:
Синтакса ЛИНК језика упита почиње кључном речи фром и завршава се кључном речи Селецт или ГроупБи. Након из кључне речи, можете да користите различите врсте стандардних операција упита као што су груписање, филтрирање и тако даље, према вашим потребама. У ЛИНК-у је доступно 50 јединствених врста администратора стандардних питања.
Кораци за писање синтаксе упита:
Корак 1: У првом кораку морамо да додамо Систем.Линк именски простор у код.
i.e., using System.Linq;
Корак 2: У другом кораку, морамо да креирамо извор података на коме морамо да извршимо операције
Ex: List list = new List() { ' Hii ', ' Welcome to JavaTpoint ', ' The topic is LINQ.' ' Any Queries ' };
Корак 3: У трећем кораку, морамо да креирамо упит за извор података користећи кључну реч као што је селецт, фром итд.
Ex: var r = from l in list where 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); } } }
Излаз:
басх за петљу од 1 до 10
2. Синтакса метода
У ЛИНК-у, синтакса метода се користи за позивање методе проширења за статичке класе које се могу набројати или упити. Такође се назива синтакса проширења метода или течно. Без обзира на то, компајлер генерално мења синтаксу упита у структури синтаксе метода у време компајлирања. Може да призове стандардни оператор упита као што су Вхере, Јоин, Мак, Мин, Авг, ГроупБи Селецт, и тако даље. Дозвољено вам је да их директно позовете без употребе синтаксе упита.
Корак 1: У првом кораку морамо да додамо Систем.Линк именски простор у код.
i.e., using System.Linq;
Корак 2: У другом кораку, морамо да креирамо извор података на коме морамо да извршимо операције
Ex: List list = new List() { ' Hii ', ' Welcome to JavaTpoint ', ' The topic is LINQ ' ' Any Queries ' };
Корак 3: Сада креирајте упит користећи методе које пружају статичке класе Енумерабле или Куериабле
Ex: var r = list.Where(a=> a.Contains(' JavaTpoint '));
Овде је р променљива упита која чува резултат артикулације упита. Клаузула обрасца се користи да би се одредио извор информација, односно листа, где се услов примењује на канал, тј. л.Цонтаинс(' Хии '), а наредба селецт даје врсту враћених ствари. Штавише, л је варијабла досега.
Корак 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); } } }
Излаз:
Предности ЛИНК-а
- Клијент не мора да учи нове језике упита за алтернативни тип формата података или извора података.
- Повећава јасноћу кода.
- Упит се може поново користити.
- Даје проверу типа објекта у време склапања.
- Он даје ИнтеллиСенсе конвенционалним колекцијама.
- Обично се користи са колекцијама или низовима.
- ЛИНК подржава редослед, груписање, филтрирање и сортирање.
- То чини отклањање грешака једноставним јер је усклађено са Ц# језиком.
- Даје директну промену сугеришући да без сумње можете променити више од једног типа података у други тип података, као што је промена СКЛ података у КСМЛ податке.