En este apartado de nuestra escuela, comenzaré a desarrollar una serie de artículos y tutoriales para aprender a utilizar la última versión del Entitity Framework, la versión 5.0 que apareció en agosto de 2012. El Entity Framework es un marco de trabajo ORM (por sus siglas en inglés, Object-Relational Mapping o Mapeo Objeto Relacional) para la plataforma .NET.
ORM es una técnica de programación para convertir datos entre el sistema de tipos utilizado en un lenguaje de programación orientado a objetos (C# o VB.NET, por ejemplo) y el utilizado en un Sistema de base de datos relacional(Sql Server u Oracle, por ej), utilizando un motor de persistencia.
En la práctica esto crea una base de datos orientada a objetos virtual, sobre la base de datos relacional. Esto posibilita el uso de las características propias de la orientación a objetos (básicamente encapsulación, herencia y polimorfismo).Hay paquetes comerciales y de uso libre disponibles que desarrollan el mapeo relacional de objetos, aunque un programador puede crear sus propias herramientas ORM. El Entity Framework es la herramienta ORM utilizada en .NET.
Aquí un breve repaso de las versiones aparecidas del Entity Framework
Versión |
Apareció con... |
Fecha |
Observaciones |
1.0 |
Visual Studio 2008 SP1 |
11 de agosto de 2008 |
Muy criticada |
4.0 |
Visual Studio 2010 |
12 de abril de 2010 |
Solucionaba muchas de las criticas hechas a la versión 1 |
4.1 |
N/A |
12 de abril de 2011 |
Code First y DBContext |
4.1 Update 1 |
N/A |
25 de julio de 2011 |
Correcciones de errores y nuevos tipos soportados |
4.3.1 |
N/A |
29 de febrero de 2012 |
Soporte para la migración |
5.0 |
Visual Studio 2012 |
15 de agosto de 2012 |
-
Tipos enumerados (Enum), Tipos de datos espaciales, expuestos mediante los tipos DBGeography y DbGeometry.
-
Posibilidad de trabajar con funciones que devuelven datos tabulares (Table-valued Functions o TVFs). 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.
|