LINQ to Entities-Übersicht

[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.]

Die meisten Geschäftsanwendungen werden zurzeit Zugriff auf Daten in relationalen Datenbanken geschrieben.Irgendwann müssen diese Anwendungen mit den Daten in einem relationalen Formular dargestellt interagieren.Das relationale Modell ist für effizientes Speichern und Abrufen nicht für die grundlegende Modellierung in objektorientierten Programmierung verwendet optimiert.Mehrere normalisierte Tabellen entsprechen häufig in eine einzelne Klasse, und Beziehungen zwischen Klassen sind nicht in die gleiche Weise wie Beziehungen zwischen Tabellen dargestellt.Business-Anwendungsentwickler müssen oft zwei (oder mehr) Programmiersprachen verwenden: eine allgemeine Sprache für die Geschäftsschichten Logik und die Präsentation (z. B. Visual C# oder Visual Basic), und eine Abfragesprache Interaktion mit der Datenbank (z. B. Transact-SQL).Der Entwickler muss also mehrerer Sprachen mächtig sein, um seine Arbeit effektiv erledigen zu können. Außerdem sind dadurch Sprachkonflikte in der Entwicklungsumgebung vorprogrammiert.Eine Anwendung, die eine Datenzugriffs-API zum Ausführen einer Abfrage anhand einer Datenbank verwendet, gibt z. B. die Abfrage als ein Zeichenfolgenliteral mit Anführungszeichen.Diese Abfragezeichenfolge ist nicht transparent an den Compiler und ist nicht für Fehler, z. B. ungültige Syntax oder existieren, ob die Spalten oder Zeilen, die es verweist überprüft. Es gibt keine Überprüfung der Abfrageparameter und keine IntelliSense-Unterstützung entweder Typ.

Die Entity Framework ermöglicht Entwicklern das Arbeiten mit Daten in Form von domänenspezifischen Objekten und Eigenschaften, z. B. Kunden und Kundenadressen, ohne denken die zugrunde liegenden Tabellen und Spalten, in denen diese Daten gespeichert.Weitere Informationen finden Sie unter NIB: Entität Datenmodell.LINQ ermöglicht Entwicklern die Satz-basierte Abfragen in Ihrem Anwendungscode formulieren, ohne eine separate Abfragesprache zu verwenden.Über die Object Services Infrastruktur der Entity FrameworkADO.NET, stellt eine allgemeine Konzeptansicht des Daten, einschließlich relationale Daten als Objekte in der .NET-Umgebung.Dadurch wird das Objekt ein ideales Ziel für LINQ-Unterstützung layer.Diese LINQ-Technologie LINQ to Entities, ermöglicht Entwicklern das Erstellen flexibler, stark typisierte Abfragen der Entity Framework Objektkontext mithilfe von LINQ-Ausdrücke und LINQ Standardabfrageoperatoren direkt aus der Entwicklungsumgebung.Die Abfragen werden in der Programmiersprache selbst und nicht als Zeichenfolge ausgedrückt Literale eingebettet im Anwendungscode, wie in der Regel der Fall in Anwendungen auf geschrieben ist die Microsoft .NET Framework, Version 2.0.Syntaxfehler sowie Fehler in Namen und Datentypen Member werden vom Compiler abgefangen und gemeldet zur Kompilierzeit, verringert das Potenzial für Typ Probleme zwischen den Entity Data Model und der Anwendung.

LINQ to Entities Abfragen verwenden die Object Services Infrastruktur.Die ObjectContext Klasse ist die primäre Klasse für die Interaktion mit einer Entity Data Model als CLR-Objekte.Der Entwickler erstellt einen generischen ObjectQuery Instanz über die ObjectContext.Die ObjectQuery generische Klasse stellt eine Abfrage, die eine Instanz oder Sammlung von typisierten Entitäten zurückgibt.Die zurückgegebene Entitätsobjekte sind aktualisierbar und befinden sich in den Objektkontext.Dies gilt auch für Entitätsobjekte, die als Mitglieder der anonyme Typen zurückgegeben werden.

LINQ und dem Entitätsdatenmodell

Bietet eine Übersicht über LINQ und die Entity Data Model.

SO WIRD'S GEMACHT: Erstellen Sie eine LINQ to Entities-Projekt in Visual Studio

Enthält Informationen zum Erstellen einer LINQ to Entities Projekt in Visual Studio.

Exemplarische Vorgehensweise: Erstellen Sie Adventure Works Sales Modell und Fragen Sie ab (Visual Basic)

Bietet eine grundlegende End-to-end LINQ to Entities Szenario mit minimaler Komplexität.

Exemplarische Vorgehensweise: Erstellen Sie Adventure Works Sales Modell und Fragen Sie ab (c#)

Bietet eine grundlegende End-to-end LINQ to Entities Szenario mit minimaler Komplexität.

Weitere Ressourcen

Anzeigen: