Schema-Element (CSDL)
Das Schema-Element ist das Stammelement eines konzeptionellen Schemas im Entitätsdatenmodell (EDM). Das Schema-Element ist die Spezifikation für den Namespace, der vom definierten Objektmodell verwendete Entitäten und Zuordnungen enthält. Das konzeptionelle Schema wird in CSDL (konzeptionelle Schemadefinitionssprache) definiert. Das EntityType-Element und das Association-Element im konzeptionellen Schema sind untergeordnete Elemente des Schema-Elements.
Das EntityContainer-Element ist die Spezifikation einer Klasse im entworfenen Objektmodell. EntitySet und AssociationSet sind untergeordnete Elemente von EntityContainer.
Weitere Informationen über EntityType-Elemente und Association-Elemente finden Sie in den Unterthemen dieses Abschnitts. Weitere Informationen über das EntityContainer -Element finden Sie unter EntityContainer-Element (CSDL).
Die folgende Schemadeklaration stellt das Schema-Element und seine untergeordneten Elemente dar.
<Schema Namespace="AdventureWorksHRModel" Alias="Self"
xmlns="https://schemas.microsoft.com/ado/2006/04/edm">
<EntityType Name="Department"
<Key>
<PropertyRef Name="DepartmentID" />
</Key>
<Property Name="DepartmentID" Type="Int16" Nullable="false" />
<Property Name="Name" Type="String" Nullable="false" />
<Property Name="GroupName" Type="String" Nullable="false" />
<Property Name="ModifiedDate" Type="DateTime" Nullable="false" />
</EntityType>
<EntityType Name="Employee"
<Key>
<PropertyRef Name=EmployeeID>
</Key>
<Property Name="EmployeeID" Type="Int32" Nullable="false" />
<Property Name="NationalIDNumber" Type="String" Nullable="false" />
<Property Name="ContactID" Type="Int32" Nullable="false" />
<Property Name="LoginID" Type="String" Nullable="false"/>
<Property Name="Title" Type="String" Nullable="false" />
<Property Name="BirthDate" Type="DateTime" Nullable="false" />
<Property Name="MaritalStatus" Type="String" Nullable="false"
/>
<Property Name="Gender" Type="String" Nullable="false"/>
<Property Name="HireDate" Type="DateTime" Nullable="false" />
<Property Name="SalariedFlag" Type="Boolean" Nullable="false" />
<Property Name="VacationHours" Type="Int16" Nullable="false" />
<Property Name="SickLeaveHours" Type="Int16" Nullable="false" />
<Property Name="CurrentFlag" Type="Boolean" Nullable="false" />
<Property Name="rowguid" Type="Guid" Nullable="false" />
<Property Name="ModifiedDate" Type="DateTime" Nullable="false" />
</EntityType>
<Association Name="Employee_EmployeeManagerID">
<End Role="Employee" Type="Self.Employee" Multiplicity="0..1" />
<End Role="Employee" Type="Self.Employee" Multiplicity="0..*" />
</Association>
<EntityContainer Name="HumanResources">
<EntitySet Name="Department" EntityType="Self.Department" />
<EntitySet Name="Employee" EntityType="Self.Employee" />
<AssociationSet Name="Employee_EmployeeManagerID"
Association="Self.Employee_EmployeeManagerID">
<End Role="Employee" EntitySet="Employee" />
<End Role="Employee63" EntitySet="Employee" />
</AssociationSet>
</EntityContainer>
</Schema>
CSDL-Schemaspezifikationen werden SSDL-Spezifikationen (Datenspeicherschema-Definitionssprache) mithilfe von MSL (Mapping-Spezifikationssprache) zugeordnet.
In diesem Abschnitt
Im Rahmen der Themen in diesem Abschnitt werden die Typen und Elemente beschrieben, die zur Implementierung eines auf dem EDM aufbauenden Objektmodells verwendet werden. Das Namespace-Attribut des Schema-Elements und die untergeordneten Elemente des Schema-Elements, wie EntityType und Association, werden in folgenden Themen beschrieben:
Jeder dieser Typen hat im CSDL-Schema untergeordnete Elemente.
Siehe auch
Konzepte
EntityContainer-Element (CSDL)
Implementieren von Entitäten (EDM)
Implementieren von Zuordnungen (EDM)