Especificación de asignaciones (MSL)

En Entity Data Model (EDM), la especificación de asignaciones usa el lenguaje de especificación de asignaciones (MSL) para conectar los tipos declarados en el lenguaje de definición de esquemas conceptuales (CSDL) a los metadatos de la base de datos donde se conservan los datos para las aplicaciones que utilizan el modelo de objetos que se va a definir.

El NamespaceName y el EntityContainerName declarados en el esquema de CSDL identifican las entidades y las asociaciones contenidas en el esquema conceptual. La sintaxis de MSL asigna estas entidades y asociaciones para almacenar los metadatos en el archivo del lenguaje de definición de esquemas de almacenamiento.

El segmento de MSL siguiente muestra la sintaxis usada para asignar el contenedor de entidades HumanResources, tal y como se definió en el esquema de CSDL, al contenedor de entidades HumanResources correspondiente, tal y como se definió en el esquema de SSDL, describiendo la base de datos de destino.

Los nombres de los contenedores de entidades asignados a CdmEntityContainer y a StorageEntityContainer no se certifican mediante el nombre del Namespace de los esquemas en los que se declaran. Aunque los contenedores de entidades se declaran dentro de los esquemas, son independientes de ellos.

<?xml version="1.0" encoding="utf-8"?>
<Mapping Space="C-S" 
    xmlns="urn:schemas-microsoft-com:windows:storage:mapping:CS">

  <EntityContainerMapping CdmEntityContainer="HumanResources"
StorageEntityContainer="HumanResources">

Los conjuntos de entidades contenidos en los contenedores de entidades se asignan con una sintaxis similar a la que se usa para los contenedores de entidades. La asignación siguiente conecta el conjunto de entidades denominado AdventureWorksHRModel.Department, procedente del esquema conceptual, a una tabla denominada Department de los metadatos de almacenamiento. El elemento EntitySetMapping incluye un atributo Name que identifica el conjunto de entidades Department, tanto en el esquema conceptual como en los metadatos de almacenamiento.

El elemento EntityTypeMapping incluye un atributo TypeName para la entidad Department del esquema de CSDL con los correspondientes atributos TableName y MappingFragment para la tabla Department de la base de datos.

Finalmente, los elementos ScalarProperty corresponden al Name de una propiedad de una entidad del esquema de CSDL y a un ColumnName de la tabla Department del esquema de SSDL.

    <EntitySetMapping Name="Department">
      <EntityTypeMapping
                   TypeName="AdventureWorksHRModel.Department">
        <MappingFragment TableName="Department">
          <ScalarProperty Name="DepartmentID"
                               ColumnName="DepartmentID" />
          <ScalarProperty Name="Name" ColumnName="Name" />
          <ScalarProperty Name="GroupName"
                                    ColumnName="GroupName" />
          <ScalarProperty Name="ModifiedDate"
                                 ColumnName="ModifiedDate" />
        </MappingFragment>
      </EntityTypeMapping>
    </EntitySetMapping>

Xmlns

Los esquemas de MSL se encuentran en el espacio de nombres XML: urn:schemas-microsoft-com:windows:storage:mapping:CS.

Elemento EntitySetMapping (MSL)

Elemento EntityContainerMapping (MSL)

Elemento EntitySetMapping (MSL)

Elemento AssociationSetMapping (MSL)

Vea también

Conceptos

Esquema conceptual (CSDL)
Esquema de metadatos de almacenamiento (SSDL)
Modelo completo (EDM) de AdventureWorks
Modelado de datos en Entity Framework