3.Entity Framework
Click here to load reader
-
Upload
henry-gallardo -
Category
Documents
-
view
64 -
download
1
Transcript of 3.Entity Framework
2013
UNIVERSIDAD
PRIVADA DEL
NORTE
Henry Alejandro
Gallardo Yntor
Entity Framework
Este documento esta basada en información cierta y validad por la misma compañía que
describe su funcionalidad, los derechos son reservados por sus autores, pero la elaboración
de estas recopilaciones son reservados por mi persona.
RESUMEN
Entity Framework es un conjunto de tecnologías de ADO.NET que permiten el desarrollo
de aplicaciones de software orientadas a datos. Los arquitectos y programadores de
aplicaciones orientadas a datos se han enfrentado a la necesidad de lograr dos objetivos
muy diferentes. Deben modelar las entidades, las relaciones y la lógica de los problemas
empresariales que resuelven, y también deben trabajar con los motores de datos que se usan
para almacenar y recuperar los datos. Los datos pueden abarcar varios sistemas de
almacenamiento, cada uno con sus propios protocolos; incluso las aplicaciones que
funcionan con un único sistema de almacenamiento deben equilibrar los requisitos del
sistema de almacenamiento con respecto a los requisitos de escribir un código de aplicación
eficaz y fácil de mantener.
Entity Framework permite a los desarrolladores trabajar con datos en forma de objetos y
propiedades específicos del dominio, como clientes y direcciones de cliente, sin tener que
preocuparse por las tablas y columnas de la base de datos subyacente donde se almacenan
estos datos. Con Entity Framework, los desarrolladores pueden trabajar en un nivel mayor
de abstracción cuando tratan con datos, y pueden crear y mantener aplicaciones orientadas a
datos con menos código que en las aplicaciones tradicionales. Dado que Entity Framework
es un componente de .NET Framework, las aplicaciones de Entity Framework se pueden
ejecutar en cualquier equipo en el que esté instalado .NET Framework a partir de la versión
3.5 SP1.
INTRODUCCION
Es un conjunto de APIs de acceso a datos para el Microsoft .NET Framework, apuntando a
la versión de ADO.NET que se incluye con el .NET Framework 3.5. Fue lanzado como
actualización separada junto con el Service Pack 1 para el .NET Framework, después del
lanzamiento de tanto el .NET Framework 3.5 y el Visual Studio 2008. Una nueva versión
del Entity Framework (v 4.0) será liberada junto al Visual Studio 2010 y el .NET
Framework 4.0.
Una entidad del Entity Framework es un objeto que tiene una clave representando la clave
primaria de una entidad lógica de datastore. Un modelo conceptual Entity Data Model
(modelo Entidad-Relación) es mapeado a un modelo de esquema de datastore. Usando el
Entity Data Model, el Framework permite que los datos sean tratados como entidades
independientemente de sus representaciones del datastore subyacente.
El Entity SQL es un lenguaje similar al SQL para consultar el Entity Data Model (en vez
del datastore subyacente). Similarmente, las extensiones del Linq, Linq-to-Entities,
proporcionan consultas tipeadas en el Entity Data Model. Las consultas Entity SQL y Linq-
to-Entities son convertidas internamente en un Canonical Query Tree que entonces es
convertido en una consulta comprensible al datastore subyacente (ej. en SQL en el caso de
una base de datos relacional). Las entidades pueden utilizar sus relaciones, y sus cambios
enviados de regreso al datastore.
METODOLOGÍA UTILIZADA
La metodología utilizada para redactar este documento es la de recolección de datos,
siendo estos virtuales y escritos.
Resultados alcanzados
ADO.NET Entity Framework permite a los desarrolladores crear aplicaciones de acceso a
datos programando con un modelo de aplicaciones conceptuales en lugar de programar
directamente con un esquema de almacenamiento relacional. El objetivo es reducir la
cantidad de código y el mantenimiento necesarios para las aplicaciones orientadas a
datos. Las aplicaciones de Entity Framework ofrecen las siguientes ventajas:
Las aplicaciones pueden funcionar en términos de un modelo conceptual más
centrado en la aplicación, que incluye tipos con herencia, miembros complejos y
relaciones.
Las aplicaciones están libres de dependencias de codificación rígida de un motor de
datos o de un esquema de almacenamiento.
Las asignaciones entre el modelo conceptual y el esquema específico de
almacenamiento pueden cambiar sin tener que cambiar el código de la aplicación.
Los desarrolladores pueden trabajar con un modelo de objeto de aplicación
coherente que se puede asignar a diversos esquemas de almacenamiento,
posiblemente implementados en sistemas de administración de base de datos
diferentes.
Se pueden asignar varios modelos conceptuales a un único esquema de
almacenamiento.
La compatibilidad con Language Integrated Query (LINQ) proporciona validación
de la sintaxis en el momento de la compilación para consultas en un modelo
conceptual.
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.
Historial
La primera versión de Entity Framework (EFv1) fue incluida con .NET Framework 3.5
Service Pack 1 y Visual Studio 2008 Service Pack 1, realizada el 11 de agosto de 2008.
Esta versión ha sido ampliamente criticada.
La segunda versión de Entity Framework, llamada Entity Framework 4.0 (EFv4), fue
realizada como parte de .NET 4.0 el 12 de abril de 2010 y se han abordado muchas de las
críticas hechas a la versión 1.
Una tercera versión de Entity Framework, versión 4.1, se publicó el 12 de abril de 2011,
con el apoyo de Code First.
Una actualización de la versión 4.1 el nombre de Entity Framework 4.1 Update 1, se
publicó el 25 de julio de 2011. Se incluye correcciones de errores y nuevos tipos
soportados.
La versión 4.3.1 fue lanzada el 29 de febrero de 2012. Hay un par de actualizaciones, como
es el soporte para la migración.
La última versión es la 5.0.0, ésta posee las siguientes características:
Nuevos tipos de datos (Tipos enumerados (Enum), Tipos de datos espaciales, expuestos
mediante los tipos DBGeography y DbGeometry).
Posibilidad de trabajar con funciones que devuelven datos tabulares. El resultado es similar
a la llamada a un procedimiento almacenado, con la diferencia de que podemos utilizar
estas funciones en consultas LINQ.
Todas las consultas LINQ se compilan y cachean de forma automática. Con ello se obtiene
un mejor rendimiento en llamadas recurrentes a las consultas.
Soporte a múltiples diagramas para un mismo modelo de datos. Se podrán visualizar partes
del modelo completo en diagramas más pequeños, con lo que se mejora la lectura y
exploración del modelo.
Mejoras generales en el rendimiento de EF respecto a versiones anteriores.
Posibilidad de utilizar procedimientos almacenados que devuelven múltiples conjuntos de
resultados. Cada conjunto de resultados del procedimiento será mapeando un tipo complejo
propio.
Referencias bibliográficas
(ADO.NET Entity Framework, 2010)