Schéma de stockage Northwind (EDM)
Les métadonnées décrivent la structure d'une base de données utilisée par une application construite sur le modèle EDM (Modèle de données d'entité). Les métadonnées sont définies dans le langage SSDL (Store Schema Definition Language). Le schéma ci-dessous correspond à la spécification complète des métadonnées pour les tables de base de données qui contiennent des instances des entités et des associations définies dans Schéma conceptuel Northwind (EDM).
Le schéma commence avec une spécification d'un espace de noms target : NorthwindLib.Target. Ce Namespace est utilisé pour identifier les métadonnées dans la spécification de mappage. Après le nom Namespace, la balise <EntityContainer> spécifie un nom pour le conteneur que les métadonnées décrivent. Dans ce cas, l'objet de base de données est nommé dbo qui correspond au nom de l'identificateur de partition****dans la base de données Northwind.
Chaque type d'entité ou jeu d'entités précédemment défini dans le schéma CSDL (Conceptual Schema Definition Language) a des spécifications EntityType et EntitySet dans le schéma SSDL. Les déclarations SSDL décrivent les tables préexistantes que le langage CSDL a adaptées dans ses spécifications de conception pour les entités et les associations. Dans le schéma SSDL, des jeux d'entités représentent les tables de la base de données. Les instances des types d'entités sont représentées par des lignes dans une table. Les propriétés des types d'entités correspondent à des colonnes dans les tables. Les propriétés Key des types SSDL correspondent aux colonnes de clé primaire des lignes dans les tables de base de données.
Le schéma ci-dessous définit les métadonnées de stockage dans l'espace de noms NorthwindLib.Target.
<?xml version="1.0" encoding="utf-8"?>
<Schema xmlns:edm="https://schemas.microsoft.com/ado/2006/04/edm/ssdl"
xmlns="https://schemas.microsoft.com/ado/2006/04/edm/ssdl"
Provider="System.Data.SqlClient"
ProviderManifestToken="2005"
Namespace="NorthwindLib.Target" Alias="Self" >
<EntityType Name="Product">
<Key>
<PropertyRef Name="ProductID" />
</Key>
<Property Name="ProductID" Type="int" Nullable="false" StoreGeneratedPattern="Identity" />
<Property Name="ProductName" Type="nvarchar" Nullable="false" MaxLength="40" />
<Property Name="CategoryID" Type="int" Nullable="true" />
<Property Name="UnitPrice" Type="decimal" Nullable="true" Precision="10" Scale="4" />
<Property Name="Discontinued" Type="bit" Nullable="false" />
<Property Name="UnitsInStock" Type="smallint" Nullable="true" />
</EntityType>
<EntityType Name="Category">
<Key>
<PropertyRef Name="CategoryID" />
</Key>
<Property Name="CategoryID" Type="int" Nullable="false" StoreGeneratedPattern="Identity" />
<Property Name="CategoryName" Type="nvarchar" Nullable="false" MaxLength="15" />
<Property Name="Description" Type="nvarchar" Nullable="true" MaxLength="255" />
</EntityType>
<EntityType Name="Customer">
<Key>
<PropertyRef Name="CustomerID" />
</Key>
<Property Name="CustomerID" Type="nchar" Nullable="false" MaxLength="5" />
<Property Name="CompanyName" Type="nvarchar" Nullable="false" MaxLength="40" />
<Property Name="ContactName" Type="nvarchar" Nullable="true" MaxLength="30" />
<Property Name="City" Type="nvarchar" Nullable="true" MaxLength="15" />
<Property Name="Country" Type="nvarchar" Nullable="true" MaxLength="15" />
</EntityType>
<EntityType Name="Order">
<Key>
<PropertyRef Name="OrderID" />
</Key>
<Property Name="OrderID" Type="int" Nullable="false" />
<Property Name="CustomerID" Type="nchar" Nullable="true" MaxLength="5" />
<Property Name="OrderDate" Type="datetime" Nullable="true" />
<Property Name="ShipCity" Type="nvarchar" Nullable="true" MaxLength="15" />
<Property Name="ShipCountry" Type="nvarchar" Nullable="true" MaxLength="15" />
</EntityType>
<EntityContainer Name="dbo">
<EntitySet Name="Categories" EntityType="Self.Category" Schema="dbo" Table="Categories" />
<EntitySet Name="Products" EntityType="Self.Product" Schema="dbo" Table="Products" />
<EntitySet Name="Customers" EntityType="Self.Customer" Schema="dbo" Table="Customers" />
<EntitySet Name="Orders" EntityType="Self.Order" Schema="dbo" Table="Orders" />
</EntityContainer>
</Schema>
Voir aussi
Concepts
Schéma conceptuel Northwind (EDM)
Schéma de mappage Northwind (EDM)
Construction du modèle objet Northwind (EDM)
Méthodes d'assistance (EDM)
Utilisation du modèle objet Northwind (EDM)
Autres ressources
Spécifications EDM
Schémas et spécification de mappage (Entity Framework)