Entidades y relaciones (EDM)

El Entity Data Model (EDM) es un modelo entidad-relación (ER). En la aplicación de línea de negocio (LOB, Line Of Business) típica, la estructura de datos es abstracta durante las primeras etapas del diseño. El diseño debe especificar cómo contendrá la aplicación varias clases de datos en una estructura lógica. Pedidos, clientes, líneas de pedido, direcciones, suministradores, productos y empleados, por ejemplo, serán representados mediante estructuras de datos, muchas de ellas de gran complejidad. Una vez identificados los conceptos elementales, las entidades son las especificaciones formales de todos los detalles de la estructura de datos.

Un tipo de datos Customer, por ejemplo, se diseña para contener detalles como el nombre de contacto, nombre de compañía, dirección e identificador único para cada cliente. Un tipo Order podría contener la fecha del pedido, las líneas de pedido, la fecha de vencimiento y un identificador único, entre otros datos. Igual que en la mayor parte de los demás modelos de datos, el EDM representa como una relación la conexión lógica entre un pedido y el cliente que lo realiza.

En el diagrama siguiente se ilustran algunos detalles de la estructura de datos y se modelan utilizando los conceptos de entidades y relaciones que se especifican en el EDM. En el diagrama, las entidades se representan mediante rectángulos y las relaciones se representan mediante las líneas que los conectan. El texto incluido dentro de los rectángulos representa las propiedades de las entidades.

Sólo los conceptos de nivel superior se denominan entidades en el EDM. En el diagrama, Customer es un concepto de nivel superior y se modela como una entidad. En el EDM, la entidad Customer se deriva a partir del EntityType básico.

Los elementos de datos subordinados se conocen como propiedades de las entidades. La entidad Customer tiene varias propiedades: CustomerID, CompanyName, ContactName, Address y Phone. Cada una de estas propiedades tiene un tipo de datos. Por ejemplo, CustomerID es una cadena, al igual que CompanyName y ContactName.

En el diagrama, la propiedad Address difiere de las demás porque tiene una estructura interna que contiene varios tipos de información. En el EDM, una estructura de datos anidada, como esta dirección, se puede modelar como una entidad y entonces usa una asociación y una propiedad de navegación para conectarla a la entidad dentro de la cual funciona como propiedad.

Los tipos de datos Customer y Address son similares en que ambos tienen estructuras internas compuestas de varias propiedades; semántica y funcionalmente, un Customer difiere de una Address. Es probable que Customer sea la unidad de las operaciones de consulta o de modificación de datos y de persistencia. Por otro lado, siempre existe una Address en un tipo de datos Customer y generalmente no se usa de forma independiente.

Las relaciones entre las entidades se modelan mediante asociaciones. Una asociación es la relación entre entidades, por ejemplo, la relación entre un objeto Customer y un objeto Order. Cada Order debe tener un Customer correspondiente. Order y Customer se relacionan lógicamente pero existen como entidades independientes. Para obtener más información acerca de la relación de las asociaciones, vea Asociación (EDM).

La relación en la que una entidad controla lógicamente a otra, como un Order y sus elementos OrderLine, también se representa mediante la relación de asociación. Cada Order está compuesto de al menos una OrderLine. Si un Customer pide el producto número 49, por ejemplo, la información sobre el elemento pedido consta de una OrderLine. La OrderLine no puede existir sin el Order.

Vea también

Conceptos

Implementar entidades (EDM)
Implementar asociaciones (EDM)

Otros recursos

Especificación de asignaciones y esquemas (Entity Framework)