Freigeben über


Entitätsdatenmodell

Das Entity Data Model (EDM) ist eine Menge von Konzepten, die die Struktur der Daten beschreiben, unabhängig von ihrer gespeicherten Form. Das EDM ist aus dem 1976 von Peter Chen beschriebenen Entitätsbeziehungsmodell ausgeliehen, baut aber auch auf dem Entitätsbeziehungsmodell auf und erweitert seine herkömmliche Verwendung.

Das EDM befasst sich mit den Herausforderungen, die sich aus der Speicherung von Daten in vielen Formen ergeben. Betrachten Sie beispielsweise ein Unternehmen, das Daten in relationalen Datenbanken, Textdateien, XML-Dateien, Tabellenkalkulationen und Berichten speichert. Dies stellt erhebliche Herausforderungen bei der Datenmodellierung, beim Anwendungsentwurf und beim Datenzugriff dar. Beim Entwerfen einer datenorientierten Anwendung besteht die Herausforderung darin, effizienten und wartungsfähigen Code zu schreiben, ohne auf effizienten Datenzugriff, -speicher und -skalierbarkeit verzichten zu müssen. Wenn Daten über eine relationale Struktur verfügen, sind Datenzugriff, Speicher und Skalierbarkeit sehr effizient, aber das Schreiben von effizientem und wartungsfähigem Code wird schwieriger. Wenn Daten über eine Objektstruktur verfügen, werden die Trade-Offs umgekehrt: Das Schreiben von effizientem und wartungsfähigem Code erfolgt auf Kosten eines effizienten Datenzugriffs, speichers und skalierbarkeit. Auch wenn das richtige Gleichgewicht zwischen diesen Kompromissen gefunden werden kann, entstehen neue Herausforderungen, wenn Daten von einem Formular in ein anderes verschoben werden. Das Entitätsdatenmodell behebt diese Herausforderungen, indem die Struktur von Daten in Bezug auf Entitäten und Beziehungen beschrieben wird, die unabhängig von jedem Speicherschema sind. Dadurch ist die gespeicherte Form von Daten für den Anwendungsentwurf und die Entwicklung irrelevant. Und da Entitäten und Beziehungen die Struktur der Daten beschreiben, wie sie in einer Anwendung verwendet werden (nicht ihre gespeicherte Form), können sie sich entwickeln, wenn sich eine Anwendung weiterentwickelt.

A conceptual model ist eine spezifische Darstellung der Struktur von Daten als Entitäten und Beziehungen und wird in einer domänenspezifischen Sprache (DSL) definiert, die die Konzepte des EDM implementiert. Konzeptionelle Schemadefinitionssprache (CSDL) ist ein Beispiel für eine solche domänenspezifische Sprache. Entitäten und Beziehungen, die in einem konzeptionellen Modell beschrieben werden, können als Abstraktionen von Objekten und Zuordnungen in einer Anwendung betrachtet werden. Auf diese Weise können Entwickler sich auf das konzeptionelle Modell konzentrieren, ohne das Speicherschema zu berücksichtigen, und ermöglicht es ihnen, Code mit Effizienz und Wartungsfreundlichkeit zu schreiben. In der Zwischenzeit können sich Speicherschemadesigner auf die Effizienz des Datenzugriffs, der Speicherung und skalierbarkeit konzentrieren.

In diesem Abschnitt

In den Themen in diesem Abschnitt werden die Konzepte des Entitätsdatenmodells beschrieben. Alle DSL-Geräte, die den EDM implementieren, sollten die hier beschriebenen Konzepte enthalten. Beachten Sie, dass das ADO.NET Entity Framework CSDL verwendet, um konzeptionelle Modelle zu definieren. Weitere Informationen finden Sie unter CSDL-Spezifikation.

Schlüsselkonzepte für Entitätsdatenmodell

Entitätsdatenmodell: Namespaces

Entitätsdatenmodell: Primitive Datentypen

Entitätsdatenmodell: Vererbung

Assoziationsende

Multiplizität des Zuordnungsendes

Zuordnungssatz

Zuordnungssatzende

Zuordnungstyp

komplexer Typ

Entitätscontainer

Entitätsschlüssel

Entitätssatz

Entitätstyp

Facette

Fremdschlüsseleigenschaft

Modell deklarierte Funktion

modelldefinierte Funktion

Navigationseigenschaft

Eigentum

Einschränkung der referenziellen Integrität

Siehe auch