Übersicht über die Metadatentyp-Hierarchie
Die ADO.NET-Metadatentyp-Hierarchie stellt einen Satz von .NET Framework-Typen zur Darstellung der vom Entitätsdatenmodell (EDM) in Entity Framework definierten Konzepte bereit. Weitere Informationen über Entity Framework und das EDM finden Sie unter ADO.NET Entity Framework und Entity Data Model.
Es gibt drei grundlegende Konzepte in der Metadatentyp-Hierarchie: Typen, Member und Beziehungen. Typen sind Konstrukte auf der obersten Ebene, die die Grundlage eines EDM bilden. Typen im EDM können einfach oder strukturell sein. Member definieren den Inhalt struktureller Typen. Beziehungen stellen logische Verbindungen zwischen den von strukturellen Typen abgeleiteten Entitätstypen her.
ADO.NET stellt den System.Data.Metadata.Edm-Namespace zum Verwalten der Metadatendienste für Entity Framework zur Verfügung. Das folgende Diagramm stellt die vom System.Data.Metadata.Edm-Namespace unterstützte Typhierarchie dar.
Die Klasse auf der obersten Ebene ist ein MetadataItem. Dies ist die Basisklasse für alle Klassen in der ADO.NET-Metadatentyp-Hierarchie. Eine EdmType-Klasse ist die Basisklasse für die Klassen, die Typen im EDM darstellen. Ein StructuralType ist ein Basistyp für alle Typen in der Metadatentyp-Hierarchie, die über Member verfügen. Weitere Informationen über die Typen in der Metadatentyp-Hierarchie finden Sie unter Typen (Metadaten). Das Codebeispiel in der GlobalItem-Klasse veranschaulicht das Durchsuchen der Typen in der Metadatentyp-Hierarchie. Weitere Informationen über die Typen im EDM finden Sie unter Entity Data Model-Typen.
Zusätzlich zu den bisher erwähnten Typen stellt der System.Data.Metadata.Edm-Namespace weitere Klassen zur Darstellung anderer wichtiger Konzepte innerhalb der von Entity Framework verwendeten Modelle bereit. Dazu gehören Entitätencontainer, Entitätenmengen, Zuordnungssätze und Funktionen.
Im EDM stellt ein EntityContainer eine logische Gruppierung von Entitätenmengen und Zuordnungssätzen dar. Eine EntitySet stellt einen logischen Container für Entitäten eines einzelnen Typs dar. In ähnlicher Weise stellt ein AssociationSet einen Container für Zuordnungen desselben Typs dar.
Das Codebeispiel in der EntityContainer-Klasse veranschaulicht das Abrufen von Informationen über Entitätencontainer und Entitätenmengen. Weitere Informationen über die Verwendung von Entitätencontainern, Entitätenmengen und Zuordnungssätzen im EDM finden Sie unter Entitätencontainer (EDM), Entitätenmengen (EDM) und Zuordnungssätze (EDM).
Speicheranbieter oder Datenbanken können verschiedene integrierte und benutzerdefinierte Funktionen enthalten. Entity Framework stellt kanonische Funktionen bereit, die die am häufigsten verwendeten integrierten Funktionen widerspiegeln. Wenn in einer Entity SQL-Abfrage kanonische Funktionen verwendet werden, wird die entsprechende Funktion für den Speicheranbieter aufgerufen. Im Thema Funktionen und Funktionsparameter (Metadaten) wird das Abrufen von Informationen über die in Entity Framework definierten kanonischen Funktionen und über die im zugrunde liegenden Speicheranbieter definierten speicherspezifischen Funktionen erläutert.