Estoy generando clases de Entity Framework en una aplicación .NET Core usando este comando:
Scaffold-DbContext "Server=server name;Database=DB name;user id=user name;password=password;Trusted_Connection=False;Encrypt=True;"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models/DB
Se está trabajando bien y la creación de modelos para todas las tablas y vistas de la base de datos. Pero curiosamente no es la creación de modelos para los procedimientos almacenados.
¿Hay algo que me falta en la sintaxis del andamio?
Entidad Marco de base crea clases de entidad única para las tablas; Todavía no se admiten procedimientos almacenados o vistas.
Pero hay un seguimiento de problemas Github en él que usted puede encontrar más información: almacenados procedimiento de asignación de soporte
Cómo agregar procedimientos almacenados (como una entidad normal) después de andamios:
Crear el modelo de salida de su procedimiento almacenado:
public class SampleModel { public int ID { get; set; } public string Name { get; set; } }
Añadir un nuevo
DbSet
a su contexto:public virtual DbSet<SampleModel> SampleModels { get; set; }
Utilizar el modelo para la salida:
var sampleModels = _context.SampleModels.FromSql($"EXEC ReturnAllSampleModels").ToList();
Hecho.