Language Integrated Query

Was ist Language Integrated Query?
Language Integrated Query (LINQ) ist ein Microsoft .NET Framework-Programmiermodell, das den .NET-Programmiersprachen Abfragefunktionen hinzufügt. Diese Erweiterungen bieten eine kürzere und aussagekräftigere Syntax zum Bearbeiten von Daten. In C # und Visual Basic wurde eine Reihe von Funktionen zur Unterstützung von LINQ hinzugefügt. Es umschließt leistungsstarke Abfragen von Objekten, XML-Dateien und Datenbanken.

LINQ kapselt schwere Generika. Zu den Unterscheidungsmerkmalen gehören Erweiterungsmethoden, Lambda-Ausdrücke, ein Objektinitialisierer, eine Abfragesyntax und anonyme Typen. Dies sind Spracherweiterungen zur Verbesserung der syntaktischen Leistung von Abfragen.

Erweiterungsmethoden erweitern bestehende Werte, ohne einen neuen Typ abzuleiten. Lambda-Ausdrücke erzeugen Ausdrucksbäume und Delegaten, während der Objektinitialisierer eine Objektinitialisierungssyntax erzeugt, die einen äquivalenten Code erzeugt.

Eine Sprache kann ihre eigene Abfragesyntax verwenden, die in LINQ-Methodenaufrufe übersetzt werden muss. Anonyme Typen ermöglichen dem Compiler das Kompilieren von Klassen, die Datenmemberdeklarationen enthalten.

LINQ unterstützt eine Reihe von LINQ-Anbietern wie folgt:

LINQ to XML: Konvertiert XML-Dokumente in eine Gruppe von XElement-Objekten. Diese Objekte werden dann von der lokalen Ausführungs-Engine abgefragt, die Teil des Standard-Abfrageoperators ist.

LINQ to SQL: Ermöglicht die Verwendung von LINQ zum Abfragen von SQL Server-Datenbanken. Da sich SQL Server-Daten in einer entfernten Datenbank befinden und eine eigene Abfrage-Engine verwenden, konvertiert dieser Anbieter zuerst eine LINQ-Abfrage in eine SQL-Abfrage und sendet sie zur Verarbeitung an den SQL-Server.

LINQ to DataSets: Aktiviert die Unterstützung für jede generische Datenbank. Dieser Provider verwendet ADO.net, das die Kommunikation mit der Datenbank verwaltet.

LINQ to Objects: Verwendet die lokale Abfrageausführungs-Engine für speicherinterne Auflistungen. Der generierte Code verweist auf die Implementierung der Standardabfrageoperatoren.


War die Erklärung zu "Language Integrated Query" hilfreich? Jetzt bewerten:

Weitere Erklärungen zu