A continuación un serie de preguntas y respuestas que pueden servir como introducción para conocer este framework.

¿Cómo ejecutar un procedimiento almacenado con Entity Framework Core?

Hay varias formas de ejecutar un procedimiento de almacenado con Entity Framework Core. La forma que es más adecuada depende del tipo de retorno del procedimiento almacenado. La siguiente lista muestra las formas más comunes

Para más detalles ver el ejemplo de código más abajo

Usando FromSql

var entidades = _context.Entidad
               .AsNoTracking()
               .FromSql($"exec dbo.ReadAllEntities")
               .ToList();

Usando ExecuteSqlCommand

var afectados = context.Database
                .ExecuteSqlCommand($"exec dbo.tuProcedimiento @Id={id}");

Usado los tipos de consulta


 public partial class MyContext : DbContext
 {
        public MyContext()
        {
        }

        public MyContext(DbContextOptions<MyContext> options)
            : base(options)
        {
        }

        public virtual DbSet<Empleado> Empleados { get; set; }

        public DbQuery<InfoEmpleado> InfoEmpleado { get; set; }


        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder.Query<InfoEmpleado>(entity =>
            {
                entity.ToQuery(() => InfoEmpleado
                    .FromSql("dbo.GetEmpleadoInfo"));

                entity.Property(e => e.Id).HasColumnName("empleado_id");
                //...
            });
        }
}

¿Con qué bases de datos puedo usar Entity Framework Core ?

Entity Framework Core tiene un modelo de proveedores lo que permite usarlo con multiples bases de datos. Solamente es necesario instalar el paquete de Nuget correspondiente y construir la cadena de conexión.

A continuación una lista de ejemplos de algunas bases de datos con las que puedes usar Entity Framework Core y la dirección del paquete de Nuget

Base de dato Paquete de Nuget
SqlServer Microsoft.EntityFrameworkCore.SqlServe
SQLite Microsoft.EntityFrameworkCore.Sqlite
Oracle Oracle.EntityFrameworkCore
MySql MySql.Data.EntityFrameworkCore
PostgreSQL Npgsql.EntityFrameworkCore.PostgreSQL

¿Dónde esta el repositorio de Entity Framework Core?

El código fuente de Entity Framework Core esta alojado en Github.Puedes clonar el código a tu computadora y explorar los detalles del código fuente.

git clone https://github.com/aspnet/EntityFrameworkCore.git 

Adicionalmente se pueden ver los "issues" y realizar contribuciones al código.

¿En qué proyectos puedo usar Entity Framework Core ?

Con cualquier tipo de proyecto de .NET Core y para cualquier tipo de proyecto .NET Framework que use la version 4.6.1 o superior.

¿Con qué lenguajes de programación puedo usar Entity Framework Core?

Se puede utilizar con los lenguajes C#, Visual Basic y F#.

¿Cuál es la relación entre los características de SQL y los de C#?

SQL Programación orientada a objetos
Base de datos Clase que hereda de DbContext
Tabla Clase DbSet
Columnas Propiedades o campos
Llaves primarias  
Llaves foráneas  
Restricciones  
Store Procedures Query Types
Funciones  

¿Qué debería saber para usar Entity Framework Core ?

  • Métodos de extensión.
  • Expresiones Lamda
  • LINQ
  • Atributos C#
  • SQL Básico

¿Cuáles son los principales componentes de Entity Framework Core?

Entity framework Core utiliza los siguientes espacios de nombres


Microsoft.EntityFrameworkCore
System.ComponentModel.DataAnnotations.Schema
System.ComponentModel.DataAnnotations

Las clases principales son DbContext y DbSet

¿Cuáles son las versiones de Entity Framework Core ?

La ultima version de Entity Framework Core al momento de actualizar este artículo es la 3.1. Cada liberación de una nueva versión de EF Core va acompañada de un post donde mencionan las nuevas características de la misma. Actualmente ya esta anunciada la próxima liberación de Entity Framework 3.0 para septiembre de 2019 dentro del evento virtual de 3 días .NET Conf 2019 y para 2020 estará disponible .NET 5.0

Versión Fecha de lanzamiento Detalles
3.1 03 diciembre 2019 Announcing Entity Framework Core 3.1 and Entity Framework 6.4
3.0 23 septiembre 2019 Announcing Entity Framework Core 3.0 and Entity Framework 6.3 General Availability
2.2 04 Diciembre 2018 Announcing Entity Framework Core 2.2
2.1 30 Mayo 2018 Announcing Entity Framework Core 2.1
2.0 14 Agosto 2017 Announcing Entity Framework Core 2.0
1.1 16 Noviembre 2016 Announcing Entity Framework Core 1.1
1.0 27 Junio 2016 Announcing Entity Framework Core 1.0

¿Cómo se instala Entity Framework Core ?

Se instala mediante paquetes de NuGet lo que lo hacen muy ligero. Y lo puedes hacer mediante la línea de comandos, la interfaz gráfica del gestor de paquetes de Visual Studio o mediante Power Shell.

Utiliza un modelo llamado Code Firts en donde se escriben las clases del dominio y a partir de ellas se crea la base de datos.También es posible crear un modelo a partir de una base de datos existente.

Cuenta con una interfaz de linea de comandos dotnet ef que permite :

  1. Crear y modificar la base de datos
  2. Generar clases a partir de una base de datos existentes.
  3. Gestionar los cambios a la base de datos.
Imagen de linea de comando Entity Framework Core </div> </div> </div>