Compartir a través de


Esquema (EDM) de almacenamiento de Northwind

Los metadatos describen la estructura de una base de datos utilizada por una aplicación generada en Entity Data Model (EDM). Los metadatos se definen en el lenguaje de definición de esquemas de almacenamiento (SSDL). El esquema siguiente es la especificación completa de los metadatos para las tablas de base de datos que contienen las instancias de las entidades y asociaciones definidas en Esquema conceptual de Northwind (EDM).

El esquema comienza con la especificación de un espacio de nombres target: NorthwindLib.Target. El Namespace se utiliza para identificar los metadatos en la especificación de asignación. Después del nombre de Namespace, la etiqueta <EntityContainer> especifica un nombre para el contenedor que los metadatos describen. En este caso, el objeto de base de datos se denomina dbo que corresponde al nombre del identificador de la partición **** en la base de datos Northwind.

Cada uno de los tipos de entidad y conjuntos de entidades definido previamente en el esquema de lenguaje de definición de esquemas conceptuales (CSDL) tiene las especificaciones de EntityType y EntitySet en el esquema SSDL. Las declaraciones del SSDL describen las tablas preexistentes que el CSDL adaptó en sus especificaciones de diseño para las entidades y asociaciones. En el esquema SSDL, los conjuntos de entidades representan las tablas en la base de datos. Las instancias de tipos de entidades se representan mediante las filas de una tabla. Las propiedades de los tipos de entidades se corresponden con las columnas de las tablas. Las propiedades Key de los tipos de SSDL se corresponden con las columnas de clave principal de las filas de las tablas de base de datos.

El esquema siguiente define los metadatos de almacenamiento en el espacio de nombres 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>

Vea también

Conceptos

Esquema conceptual de Northwind (EDM)
Esquema de asignación de Northwind (EDM)
Generar el modelo de objetos de Northwind (EDM)
Métodos auxiliares (EDM)
Usar el modelo de objetos de Northwind (EDM)

Otros recursos

Especificaciones del EDM
Especificación de asignaciones y esquemas (Entity Framework)