Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Eine Navigationseigenschaft ist eine optionale Eigenschaft für einen Entitätstyp , der die Navigation von einem Ende einer Zuordnung zum anderen ermöglicht. Im Gegensatz zu anderen Eigenschaften enthalten Navigationseigenschaften keine Daten.
Eine Navigationseigenschaftsdefinition umfasst Folgendes:
Ein Name. (Erforderlich)
Die Zuordnung, in der sie navigiert. (Erforderlich)
Die Enden der Zuordnung, in der sie navigiert. (Erforderlich)
Beachten Sie, dass Navigationseigenschaften für beide Entitätstypen an den Enden einer Zuordnung optional sind. Wenn Sie eine Navigationseigenschaft für einen Entitätstyp am Ende einer Zuordnung definieren, müssen Sie keine Navigationseigenschaft für den Entitätstyp am anderen Ende der Zuordnung definieren.
Der Datentyp einer Navigationseigenschaft wird von der Multiplizität des Remotezuordnungsendes bestimmt. Angenommen, eine Navigationseigenschaft, OrdersNavProp
, ist für einen Customer
-Entitätstyp vorhanden und navigiert eine 1:n-Zuordnung zwischen Customer
und Order
. Da das Remotezuordnungsende für die Navigationseigenschaft eine Multiplizität von n (*) aufweist, ist sein Datentyp eine Auflistung (von Order
). Ist eine Navigationseigenschaft, CustomerNavProp
, für den Order
-Entitätstyp vorhanden, wäre sein Datentyp dementsprechend Customer
, da die Multiplizität des Remoteendes "eins" (1) beträgt.
Beispiel
Das folgende Diagramm zeigt ein konzeptionelles Modell mit drei Entitätstypen: Book
, , Publisher
und Author
. Die Navigationseigenschaften Publisher
und Authors
werden für den Entitätstyp "Book" definiert. Die Navigationseigenschaft Books
ist sowohl für den Publisher-Entitätstyp als auch für den Entitätstyp Author
definiert.
Das ADO.NET Entity Framework verwendet eine domänenspezifische Sprache (DSL), die als konzeptuelle Schemadefinitionssprache (CSDL) bezeichnet wird, um konzeptionelle Modelle zu definieren. Die folgende CSDL definiert den Book
im obigen Diagramm gezeigten Entitätstyp:
<EntityType Name="Book">
<Key>
<PropertyRef Name="ISBN" />
</Key>
<Property Type="String" Name="ISBN" Nullable="false" />
<Property Type="String" Name="Title" Nullable="false" />
<Property Type="Decimal" Name="Revision" Nullable="false" Precision="29" Scale="29" />
<NavigationProperty Name="Publisher" Relationship="BooksModel.PublishedBy"
FromRole="Book" ToRole="Publisher" />
<NavigationProperty Name="Authors" Relationship="BooksModel.WrittenBy"
FromRole="Book" ToRole="Author" />
</EntityType>
XML-Attribute werden verwendet, um die zum Definieren einer Navigationseigenschaft erforderlichen Informationen zu kommunizieren: Das Attribut Name
enthält den Namen der Eigenschaft, Relationship
enthält den Namen der Assoziation, die navigiert wird, und FromRole
und ToRole
enthalten die Enden der Assoziation.