Share via


LINQ und das Entity Data Model

Mit LINQ-to-Entities können Entwickler flexible, stark typisierte Abfragen für den Entitätsdatenmodell (EDM)-Objektkontext erstellen, indem sie LINQ-Ausdrücke und LINQ-Standardabfrageoperatoren verwenden. Dadurch können Benutzer stark typisierte, zusammensetzbare Abfragen in einerTransact-SQL-ähnlichen Syntax direkt in der Entwicklungsumgebung erstellen. Die Abfragen werden in der Programmiersprache selbst formuliert, nicht als in den Anwendungscode eingebettete Zeichenfolgenliterale, wie dies bei in Microsoft .NET Framework, Version 2.0 geschriebenen Anwendungen normalerweise der Fall ist. Syntaxfehler sowie Fehler bei Membernamen und Datentypen werden vom Compiler erkannt und zur Kompilierungszeit gemeldet. Dadurch werden mögliche Typenprobleme zwischen dem EDM und der Anwendung verringert.

Wenn eine Anwendung das EDM verwendet, wird das Mapping zwischen dem konzeptionellen Datenmodell und der zugrunde liegenden Datenquelle automatisch behandelt. Ein Entwickler kann eine LINQ-to-Entities-Anwendung ohne jede Kenntnis des zugrunde liegenden Datenquelle oder spezieller Methoden zur Abfrage der Datenquelle erstellen. So kann auch die Back-End-Datenquelle geändert werden, ohne dass Änderungen an der Clientanwendung erforderlich werden, da die meisten datenbankspezifischen Funktionen von Object Services verarbeitet werden. Weitere Informationen finden Sie unter Übersicht über Object Services (Entity Framework).

LINQ-to-Entities-Abfragen verwenden die Object Services-Infrastruktur. Die ObjectContext-Klasse ist die primäre Klasse für die Interaktion mit einem EDM als CLR-Objekte. Der Entwickler erstellt über den ObjectContext eine ObjectQuery-Instanz. Die generische ObjectQuery-Klasse stellt eine Abfrage dar, die eine Instanz oder eine Auflistung von typisierten Entitäten zurückgibt. Die von ObjectQuery zurückgegebenen Entitätsobjekte können anhand des Objektkontexts verfolgt und mithilfe der SaveChanges-Methode aktualisiert werden.

Siehe auch

Weitere Ressourcen

LINQ to Entities