lunes, 26 de marzo de 2012

Entity Framework 4.0


Un enfoque de diseño habitual para crear una aplicación o un servicio consiste en dividir la aplicación o el servicio en tres partes: un modelo de dominio, un modelo lógico y un modelo físico. El modelo de dominio define las entidades y relaciones del sistema que se está modelando. El modelo lógico de una base de datos relacional normaliza las entidades y relaciones en tablas con restricciones de claves externas. El modelo físico abarca las capacidades de un motor de datos determinado especificando los detalles del almacenamiento en forma de particiones e índices.

s administradores de bases de datos refinan el modelo físico para mejorar el rendimiento, pero los programadores que escriben el código de la aplicación principalmente se limitan a trabajar con el modelo lógico escribiendo consultas SQL y llamando a procedimientos almacenados. Los modelos de dominio se suelen usar como una herramienta para capturar y comunicar los requisitos de una aplicación, con frecuencia como diagramas inertes que se ven y se explican en las primeras etapas de un proyecto, y a continuación se abandonan. Muchos equipos de desarrolladores omiten la creación de un modelo conceptual y comienzan especificando las tablas, columnas y claves en una base de datos relacional.

Entity Framework da vida a los modelos conceptuales permitiendo a los programadores consultar las entidades y relaciones en el modelo de dominio (denominado modelo conceptual en Entity Framework ) al tiempo que se basan en Entity Framework para traducir esas operaciones en los comandos específicos del origen de datos. Esto libera a las aplicaciones de las dependencias codificadas de forma rígida en un origen de datos determinado. El modelo conceptual, el modelo de almacenamiento y las asignaciones entre los dos se expresan en esquemas basados en XML y se definen en archivos que tienen extensiones de nombre correspondientes:
El lenguaje de definición de esquemas conceptuales (CSDL) define el modelo conceptual. CSDL es la implementación de Entity Framework del Entity Data Model. La extensión de archivo es .csdl.
El lenguaje de definición de esquemas de almacenamiento (SSDL) define el modelo de almacenamiento, que también se denomina modelo lógico. La extensión de archivo es .ssdl.
El lenguaje de especificación de asignaciones (MSL) define las asignaciones entre los modelos conceptual y de almacenamiento. La extensión de archivo es .msl.

El modelo de almacenamiento y las asignaciones pueden cambiar según sea necesario sin requerir cambios en el modelo conceptual, las clases de datos o el código de la aplicación. Dado que los modelos de almacenamiento son específicos del proveedor, puede trabajar con un modelo conceptual coherente a través de varios orígenes de datos.

Entity Framework utiliza estos modelos y archivos de asignación para transformar las operaciones de creación, lectura, actualización y eliminación de las entidades y relaciones del modelo conceptual en las operaciones equivalentes en el origen de datos. Entity Framework incluso permite asignar las entidades del modelo conceptual a los procedimientos almacenados en el origen de datos

No hay comentarios:

Publicar un comentario