Modelado de datos en Entity Framework

El Entity Data Model (EDM) es un modelo de entidad relación. El EDM define los datos en un formato neutro que no está restringido por la estructura de los lenguajes de programación o las bases de datos relacionales. Los esquemas EDM se usan para especificar los detalles de las entidades y las relaciones, y para implementarlos como estructuras de datos.

Una entidad es una parte del dominio de una aplicación que se debe representar mediante datos. Algunos ejemplos de entidades y relaciones se pueden encontrar en una aplicación de línea de negocio (LOB, Line Of Business) típica. Entre las entidades del dominio de una aplicación LOB se podrían incluir los clientes, pedidos, líneas de pedido, proveedores, productos, vendedores, suministradores, facturas, etcétera. El EntityType del EDM es la especificación de un tipo de datos que representa la entidad en el dominio de la aplicación.

Una relación es la conexión lógica entre entidades: por ejemplo, la conexión lógica entre el pedido de una mercancía y el cliente que lo realiza. Dado que un cliente puede tener asociados muchos pedidos, la relación entre un cliente y sus pedidos es de uno a varios. Los productos y los suministradores podrían tener una relación varios a varios.

La definición de entidades y relaciones puede ser un proceso muy complejo. Algo tan básico como el pedido de una mercancía en una aplicación LOB requiere una cantidad sorprendente de detalles. Por ejemplo, el pedido puede adoptar varios formatos. Podría ser un pedido al almacén, por teléfono, por Internet o por catálogo. En el EDM, los detalles de cada tipo de pedido se especifican conceptualmente en la sintaxis XML. Las propiedades de cada tipo de pedido y cualquier restricción necesaria se propagan a las aplicaciones que usan los datos integrados en el esquema conceptual.

El EDM modela las entidades y sus relaciones mediante dos tipos básicos.

  • EntityType: es la especificación abstracta de los detalles de una estructura de datos en el dominio de la aplicación.

  • AssociationType: es la conexión lógica entre los tipos.

El esquema de diseño de un EDM define la estructura, semántica, restricciones y relaciones de las entidades en el dominio de una aplicación. En la implementación del EDM de servicios de objeto, el esquema conceptual está asignado a otro esquema que contiene metadatos que describen el modelo de almacenamiento, normalmente las tablas en una base de datos. El esquema conceptual se usa para generar las clases de un modelo de objetos programables que se usará en el código de la aplicación. Los esquemas conceptual y de almacenamiento también se usan en el Entity Framework para validar, consultar y actualizar los datos de la aplicación en tiempo de ejecución.

En esta sección

Vea también

Conceptos

Implementar entidades (EDM)
Implementar asociaciones (EDM)
Lenguaje Entity SQL

Otros recursos

Especificaciones del EDM
Aplicaciones de ejemplo (Entity Framework)