Abfrage von Daten
Entity Framework Core verwendet Language Integrated Query (LINQ), um Daten aus der Datenbank abzufragen. LINQ ermöglicht Ihnen, mit C# (oder Ihrer bevorzugten .NET-Sprache) stark typisierte Abfragen zu schreiben. Dabei werden der abgeleitete Kontext und Entitätsklassen verwendet, um auf Datenbankobjekte zu verweisen. EF Core übergibt eine Darstellung der LINQ-Abfrage an den Datenbankanbieter. Die Datenbankanbieter übersetzen diese dann in die datenbankspezifische Abfragesprache, z. B. SQL für relationale Datenbanken. Abfragen werden immer für die Datenbank ausgeführt, auch wenn die im Ergebnis zurückgegebenen Entitäten bereits im Kontext vorhanden sind.
Tipp
Das in diesem Artikel verwendete Beispiel finden Sie auf GitHub.
Auf den folgenden Ausschnitten werden einige Beispiele für das Ausführen gängiger Aufgaben mit EF Core dargestellt.
Laden aller Daten
using (var context = new BloggingContext())
{
var blogs = context.Blogs.ToList();
}
Laden einer einzelnen Entität
using (var context = new BloggingContext())
{
var blog = context.Blogs
.Single(b => b.BlogId == 1);
}
Filtern
using (var context = new BloggingContext())
{
var blogs = context.Blogs
.Where(b => b.Url.Contains("dotnet"))
.ToList();
}
Weiterführende Themen
- Weitere Informationen zu LINQ-Abfrageausdrücken
- Ausführlichere Informationen zur Verarbeitung einer Abfrage in EF Core finden Sie unter Funktionsweise von Abfragen.