Características de Entity Framework

Una aplicación de Entity Framework requiere crear un modelo conceptual que defina las entidades y las relaciones, un modelo lógico que represente el modelo relacional subyacente y las asignaciones entre los dos. A continuación, se genera un modelo de objetos programable a partir del modelo conceptual.

Las características y componentes siguientes de Entity Framework trabajan conjuntamente para proporcionar un entorno de programación de un extremo a otro.

  • El Entity Data Model (EDM) es la pieza central de Entity Framework. Especifica el esquema de diseño, que se usa para generar las clases programables que usa el código de la aplicación. Las estructuras de almacenamiento de los datos conservados se representan en un esquema de almacenamiento y una especificación de asignación conecta el esquema de diseño con el esquema de almacenamiento. Las entidades conceptuales se pueden materializar como objetos o se pueden leer en un formato serializado mediante un lector de datos. Los desarrolladores pueden extender estos objetos cuando sea necesario para la compatibilidad con diferentes necesidades de la aplicación. Para obtener más información, vea Entity Data Model.

  • El componente Object Services permite a los programadores trabajar con las clases de Common Language Runtime (CLR) generadas a partir del modelo conceptual. También proporcionan compatibilidad de infraestructura con Entity Framework, con servicios como administración de estados, seguimiento de cambios, resolución de identidad, relaciones de carga y navegación, propagación de cambios de objeto a modificaciones de base de datos y compatibilidad con consultas para Entity SQL. Para obtener más información, vea Servicios de objeto (Entity Framework).

  • LINQ to Entities proporciona compatibilidad con Language-Integrated Query (LINQ) para consultar las entidades. LINQ to Entities permite a los programadores escribir consultas con la base de datos utilizando uno de los lenguajes de programación de .NET Framework admitidos, como Visual Basic o Visual C#. Para obtener más información, vea LINQ to Entities.

  • Entity SQL es un lenguaje independiente del almacenamiento que es similar a SQL y que se ha diseñado para la consulta y manipulación de gráficos enriquecidos de objetos basados en el modelo Entity Data Model (EDM). Para obtener más información, vea Lenguaje Entity SQL.

  • El proveedor EntityClient extiende el modelo de proveedor de ADO.NET teniendo acceso a los datos en lo que respecta a las entidades conceptuales y relaciones. Ejecuta consultas que usan Entity SQL. Entity SQL proporciona el lenguaje de consulta subyacente que permite a EntityClient comunicarse con la base de datos. Para obtener más información, vea Proveedor de EntityClient para Entity Framework.

  • El componente de metadatos de ADO.NET administra los metadatos en cuanto a las necesidades de tiempo de ejecución y tiempo de diseño de Entity Framework. Todos los metadatos asociados a los modelos y asignaciones se exponen a través de las interfaces de metadatos que son independientes de los mecanismos usados para el almacenamiento de los metadatos. El mecanismo de almacenamiento actual utiliza el archivo que se basa en tres dialectos XML: el lenguaje de definición de esquemas conceptuales (CSDL), el lenguaje de definición de esquemas de almacenamiento (SSDL) y el lenguaje de especificación de asignaciones (MSL). Para obtener más información, vea Metadatos de ADO.NET.

  • Entity Framework incluye un conjunto de herramientas en evolución que generan asignaciones y clases parciales que representan las entidades en el modelo conceptual. Para obtener más información, vea Herramientas de Entity Data Model.

  • Entity Framework incluye un proveedor de datos SqlClient actualizado que admite los árboles de comandos canónicos. Para obtener más información, vea .Proveedor de datos de .NET Framework para SQL Server (SqlClient) de Entity Framework.

Diagrama de la arquitectura

El diagrama siguiente muestra cómo se relacionan las diversas interfaces de programación de usuario accesibles en Entity Framework. Una flecha descendente indica una consulta en el origen de datos, y una flecha ascendente indica los datos devueltos. Servicios de objeto genera un árbol de comandos canónico que representa a LINQ to Entities o una operación de Entity SQL con el modelo conceptual. El proveedor de EntityClient transforma este árbol de comandos canónico, basado en el modelo EDM, en un nuevo árbol de comandos canónico que es una operación equivalente en el origen de datos.

Vea también

Conceptos

Terminología de Entity Framework
Introducción a Entity Framework

Otros recursos

Referencia de características (Entity Framework)
Introducción (Entity Framework)