Co je to jazykový integrovaný dotaz?

Language Integrated Query (LINQ) poskytuje schopnost hladce integrovat deklarativní syntaxi dotazu do imperativních jazyků, především C# a VB.NET. Vývoj LINQ vyřešil problémy vývojáři pracující v objektově orientovaných prostředích, se kterými se setkala při provádění dotazů. Byl zaveden jako součást Microsoft® .NET Framework verze 3.5 v listopadu 2007 a v Codename Visual Studio® „Orcas“. Vývojáři psaní v těchto jazycích museli vložit SQL nebo XQuery jako řetězce a ručně mapovat výsledná data do objektů .NET. Vložené řetězce a mapování dotazů nemohly být ověřeny kompilátory .NET, což umožnilo objevit potenciální chyby za běhu.Jects. Vývojář by obvykle iteroval po celé sbírce zdrojů a vytvořil nové kolekce výsledků založené na kritériích vyhledávání. Vývojář mohl také transformovat data při vytváření kolekcí výsledků. Tento přístup byl těžkopádný; Jednoduchý výběrový dotaz napsaný v C# nebo VB by vyžadoval nejméně pět řádků kódu, zatímco stejný dotaz by vyžadoval jeden řádek kódu v jazyce dotazu.

Výzvy dotazování v objektově orientovaném prostředí poskytly Microsoftovi impuls k vytvoření LINQ. LINQ poskytuje syntaxi dotazu připomínající SQL, která má být použita in-line s C# nebo VB, kompletní s kontrolou statického typu. Při dotazování .NET sbírky mohou vývojáři místo použití vnořených smyček použít Syntaxe LINQ k výběru položek a transformaci dat. Mezi jiné výhody to vede k méně řádkům kódu ve srovnání s čistě objektově orientovanou syntaxí.

Při přístupu k externímu dZdroje ATA, LINQ a podpůrné komponenty odstraňují potřebu vložených jazyků dotazů a mapování dat v samotném jazyce .NET. Za účelem provedení mapování dat závisí LINQ na komponentách zvaných poskytovatelé LINQ. LINQ-to-Objects je poskytovatel akcií, který umožňuje LINQ k přístupu ke sbírkám .NET. Podobně existují poskytovatelé pro přístup k relačním databázím a dokumentům XML. Většina z těchto poskytovatelů jsou komponenty třetích stran, které nejsou zahrnuty do rámce .NET. Bez ohledu na použité poskytovatele používají všechny dotazy stejnou syntaxi LINQ.

Mezi syntaxí jazykového integrovaného dotazu a poskytovateli je knihovna operátorů dotazů přidaných do rámce .NET jako součást zařízení LINQ. Tito operátoři provádějí takové úkoly, jako je filtrování, objednávání, nastavení teoretických operací a agregace. Protože tito operátoři jsou součástí rámce .NET, lze je také použít bez LINQ, pokud si vývojář tak vybere.

JINÉ JAZYKY

Pomohl vám tento článek? Děkuji za zpětnou vazbu Děkuji za zpětnou vazbu

Jak můžeme pomoci? Jak můžeme pomoci?