Compartir a través de


Entity Framework 6

Entity Framework 6 (EF6) es un mapeador de objetos-relacional (O/RM) para .NET, probado y comprobado durante muchos años desarrollando y estabilizando características.

Como O/RM, EF6 reduce la disparidad de impedancia entre los mundos relacional y orientado a objetos, lo que permite a los desarrolladores escribir aplicaciones que interactúan con datos almacenados en bases de datos relacionales mediante objetos .NET fuertemente tipados que representan el dominio de la aplicación, y elimina la necesidad de una gran parte del código de infraestructura de acceso a datos que normalmente necesitan escribir.

EF6 implementa muchas características populares de O/RM:

  • Mapeo de clases de entidad POCO que no dependen de ningún tipo de EF
  • Seguimiento automático de cambios
  • Resolución de identidades y unidad de trabajo
  • Carga ansiosa, perezosa y explícita
  • Traducción de consultas de tipo seguro mediante LINQ (Language INtegrated Query)
  • Capacidades de mapeo avanzadas, incluida la compatibilidad con:
    • Relaciones uno a uno, uno a varios y varios a varios
    • Herencia (tabla por jerarquía, tabla por tipo y tabla por clase concreta)
    • Tipos complejos
    • Procedimientos almacenados
  • Diseñador visual para crear modelos de entidad.
  • Una experiencia de "Code First" para crear modelos de entidad escribiendo código.
  • Los modelos se pueden generar a partir de bases de datos existentes y, a continuación, editarlos manualmente, o bien se pueden crear desde cero y, a continuación, usarse para generar nuevas bases de datos.
  • Integración con modelos de aplicaciones de .NET Framework, incluidos ASP.NET y a través del enlace de datos, con WPF y WinForms.
  • Conectividad de base de datos basada en ADO.NET y numerosos proveedores disponibles para conectarse a SQL Server, Oracle, MySQL, SQLite, PostgreSQL, DB2, etc.

¿Debo usar EF6 o EF Core?

EF Core es una versión más moderna, ligera y extensible de Entity Framework que tiene funcionalidades y ventajas muy similares a EF6. EF Core es una reescritura completa y contiene muchas características nuevas no disponibles en EF6, aunque también carece de algunas de las funcionalidades de asignación más avanzadas de EF6. Considere la posibilidad de usar EF Core en nuevas aplicaciones si el conjunto de características coincide con sus requisitos. Compare EF Core & EF6 examina esta opción con mayor detalle.

Introducción

Agregue el paquete NuGet EntityFramework al proyecto o instale Entity Framework Tools para Visual Studio. A continuación, vea vídeos, lea tutoriales y documentación avanzada para ayudarle a sacar el máximo partido de EF6.

Versiones anteriores de Entity Framework

Esta es la documentación de la versión más reciente de Entity Framework 6, aunque gran parte de ella también se aplica a las versiones anteriores. Consulte What's New and Past Releases (Novedades y versiones anteriores ) para obtener una lista completa de las versiones de EF y las características que introdujeron.