Entity Framework-Glossar

Code First

Ein Entity Framework-Modell wird mithilfe von Code erstellt. Das Modell kann auf eine vorhandene Datenbank oder eine neue Datenbank ausgerichtet sein.

Kontext

Diese Klasse stellt eine Sitzung mit der Datenbank dar und ermöglicht Ihnen das Abfragen und Speichern von Daten. Ein Kontext wird von der DbContext- oder ObjectContext-Klasse abgeleitet.

Konvention (Code First)

Die Konvention stellt eine Regel dar, die Entity Framework verwendet, um den Aufbau Ihres Modells aus Ihren Klassen abzuleiten.

Database First

Ein Entity Framework-Modell wird mithilfe des EF-Designers erstellt, das auf eine vorhandene Datenbank ausgerichtet ist.

Eager Loading

Dabei handelt es sich um ein Muster zum Laden verwandter Daten, bei dem eine Abfrage für einen Entitätstyp auch verwandte Entitäten als Teil der Abfrage lädt.

EF-Designer

Dabei handelt es sich um einen visuellen Designer in Visual Studio, mit dem Sie ein Entity Framework-Modell mithilfe von Feldern und Linien erstellen können.

Entity

Eine Klasse oder ein Objekt, die oder das Anwendungsdaten darstellt, z. B. Kunden, Bestellungen und Produkte.

Entity Data Model

Dieses Modell beschreibt Entitäten und die Beziehungen zwischen ihnen. EF verwendet Entity Data Model (EDM), um das konzeptionelle Modell zu beschreiben, für das die Entwickler*innen programmieren. EDM baut auf dem Entity-Relationship-Modell auf, das von Dr. Peter Chen eingeführt wurde. EDM wurde ursprünglich mit dem Hauptziel entwickelt, das gemeinsame Datenmodell für eine Reihe von Entwickler- und Servertechnologien von Microsoft zu werden. EDM wird auch als Teil des OData-Protokolls verwendet.

Explizites Laden

Dabei handelt es sich um ein Muster zum Laden verwandter Daten, bei denen verwandte Objekte durch das Aufrufen einer API geladen werden.

Fluent-API

Diese API kann zum Konfigurieren eines Code First-Modells verwendet werden.

Fremdschlüsselzuordnung

Dabei handelt es sich um eine Zuordnung zwischen Entitäten, bei denen eine Eigenschaft, die den Fremdschlüssel darstellt, in der Klasse der abhängigen Entität enthalten ist. Beispielsweise enthält „Product“ eine CategoryId-Eigenschaft.

Identifizierende Beziehung

Eine Beziehung, in der der Primärschlüssel der Prinzipalentität Teil des Primärschlüssels der abhängigen Entität ist. Bei diesem Beziehungstyp kann die abhängige Entität nicht ohne die Prinzipalentität vorhanden sein.

Unabhängige Zuordnung

Dabei handelt es sich um eine Zuordnung zwischen Entitäten, bei denen keine Eigenschaft vorhanden ist, die den Fremdschlüssel in der Klasse der abhängigen Entität darstellt. Beispielsweise enthält die Klasse „Product“ eine Beziehung zur Kategorie, aber keine CategoryId-Eigenschaft. Der Zuordnungsstatus wird durch Entity Framework unabhängig vom Status der Entitäten an den beiden Zuordnungsenden nachverfolgt.

Lazy Loading

Dabei handelt es sich um ein Muster zum Laden verwandter Daten, bei denen verwandte Objekte automatisch geladen werden, wenn auf eine Navigationseigenschaft zugegriffen wird.

Model First

Ein Entity Framework-Modell wird mithilfe des EF-Designers erstellt, das dann zum Erstellen einer neuen Datenbank verwendet wird.

Dabei handelt es sich um eine Eigenschaft einer Entität, die auf eine andere Entität verweist. Beispielsweise enthält „Product“ die Navigationseigenschaft einer Kategorie, die eine Navigationseigenschaft von Produkten enthält.

POCO

Dabei handelt es sich um ein Akronym für „Plain-Old CLR Object“. POCO ist eine einfache Benutzerklasse ohne Frameworkabhängigkeiten. Im Kontext von EF implementiert eine Entitätsklasse, die nicht von der EntityObject-Klasse abgeleitet ist, in EF definierte Schnittstellen oder Attribute. Solche vom Persistenzframework getrennten Entitätsklassen gelten auch als „Persistenz ignorierend“.

Beziehungsinverse

Dabei handelt es sich um das gegenteilige Ende einer Beziehung, z. B. „product.Category“ und „category.Product“.

Selbst-protokollierende Entität

Diese Entität wurde aus einer Codegenerierungsvorlage erstellt, die die n-schichtige Entwicklung unterstützt.

Tabelle pro konkretem Typ (Table-Per-Concrete Type, TPC)

Dabei handelt es sich um eine Methode zum Mapping der Vererbung, bei der jeder nicht abstrakte Typ in der Hierarchie einer separaten Tabelle in der Datenbank zugeordnet ist.

Tabelle pro Hierarchie (TPH)

Dabei handelt es sich um eine Methode zum Mapping der Vererbung, bei der alle Typen in der Hierarchie der gleichen Tabelle in der Datenbank zugeordnet sind. Eine oder mehrere Diskriminatorspalten werden verwendet, um den Typ der einzelnen Zeilen zu identifizieren.

Tabelle pro Typ (TPT)

Dabei handelt es sich um eine Methode zum Mapping der Vererbung, bei der die gemeinsamen Eigenschaften aller Typen in der Hierarchie der gleichen Tabelle in der Datenbank zugeordnet sind. Eigenschaften, die für jeden Typ eindeutig sind, werden jedoch einer separaten Tabelle zugeordnet.

Typermittlung

Dabei handelt es sich um den Prozess zur Identifizierung der Typen, die Teil eines Entity Framework-Modells sein sollten.