English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
LINQ (Sprachintegrierte Abfrage) ist eine einheitliche Abfragesprache in C# und VB.NET, die zur Abfrage von Daten aus verschiedenen Quellen und Formaten verwendet wird. Sie ist in C# oder VB integriert, was eine Unverträglichkeit zwischen Programmiersprache und Datenbank beseitigt und einen einzigen Abfrageschnittstelle für verschiedene Arten von Datenquellen bietet.
Zum Beispiel ist SQL eine strukturierte Abfragesprache, die zur Speicherung und Abfrage von Daten in Datenbanken verwendet wird. Ebenso ist LINQ eine in C# und VB.NET integrierte strukturierte Abfragesprache, die zur Abfrage von Daten aus verschiedenen Datenquellen (z.B. Sammlungen, ADO.Net DataSet, XML-Dokumente, Web-Services und MS SQL Server sowie anderen Datenbanken) verwendet wird.
LINQ gibt die Ergebnisse als Objekte zurück. Dies ermöglicht es Ihnen, objektorientierte Methoden auf der Ergebnismenge zu verwenden, ohne sich darum kümmern zu müssen, verschiedene Formate der Ergebnisse in Objekte umzuwandeln.
Das folgende Beispiel zeigt eine einfache LINQ-Abfrage, die alle Strings aus einem Array mit "a" enthält, abruft.
// Datenquelle string[] names = {"Bill", "Steve", "James", "Mohan"}; // LINQ-Abfrage var myLinqQuery = from name in names where name.Contains('a') select name; // Abfrageausführung foreach(var name in myLinqQuery) Console.Write(name + " ");
Im obigen Beispiel ist der String-Array Name ein Datenquelle. Hier ist die LINQ-Abfrage, die dem Variablen myLinqQuery zugewiesen wird.
from name in names where name.Contains('a') select name;
Die obige Abfrage verwendet die LINQ-Abfragesyntax. Mehr Informationen finden Sie im Kapitel "Abfragesyntax".
Vor der Ausführung einer LINQ-Abfrage erhalten Sie keine Ergebnisse. LINQ-Abfragen können auf verschiedene Weise ausgeführt werden, hier verwenden wir den foreach-Loop, um die im myLinqQuery gespeicherte Abfrage auszuführen. Der foreach-Loop führt die Abfrage an der Datenquelle aus und erhält die Ergebnisse, iteriert dann über die Ergebnismenge.
Daher muss jede LINQ-Abfrage eine Art von Datenquelle abfragen, sei es ein Array, eine Sammlung, XML oder eine andere Datenbank. Nachdem Sie die LINQ-Abfrage geschrieben haben, müssen Sie sie ausführen, um Ergebnisse zu erhalten.
Erkundigen Sie sich im nächsten Kapitel, warum LINQ verwendet wird.