Schema di archiviazione di Northwind (EDM)

I metadati descrivono la struttura di un database utilizzato da un'applicazione compilata in base a Entity Data Model (EDM). I metadati sono definiti in SSDL (Store Schema Definition Language). Lo schema seguente rappresenta la specifica dei metadati completa per le tabelle di database che contengono istanze delle entità e delle associazioni definite in Schema concettuale di Northwind (EDM).

Lo schema inizia con una specifica di uno spazio dei nomi target: NorthwindLib.Target. Questo oggetto Namespace è utilizzato per identificare i metadati nella specifica di mapping. Dopo il nome di Namespace, il tag <EntityContainer> specifica un nome per il contenitore descritto dai metadati. In questo caso, l'oggetto di database è denominato dbo, che corrisponde al nome dell'identificatore di partizione****nel database Northwind.

Ognuno dei tipi di entità e dei set di entità definiti in precedenza nello schema CSDL (Conceptual Schema Definition Language) dispone di specifiche per EntityType e EntitySet nello schema SSDL. Le dichiarazioni SSDL descrivono le tabelle preesistenti adattate da CSDL nelle specifiche di progettazione per le entità e le associazioni. Nello schema SSDL i set di entità rappresentano le tabelle nel database. Le istanze dei tipi di entità sono rappresentate dalle righe in una tabella. Le proprietà dei tipi di entità corrispondono alle colonne nelle tabelle. Le proprietà Key dei tipi SSDL corrispondono alle colonne di chiave primaria delle righe nelle tabelle di database.

Nello schema seguente sono definiti i metadati di archiviazione nello spazio dei nomi 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>

Vedere anche

Concetti

Schema concettuale di Northwind (EDM)
Schema di mapping di Northwind (EDM)
Compilazione del modello a oggetti di Northwind (EDM)
Metodi di supporto (EDM)
Utilizzo del modello a oggetti di Northwind (EDM)

Altre risorse

Specifiche EDM
Specifica di schemi e mapping (Entity Framework)