Ejecutar una instrucción SQL o procedimiento en .net Entity Framework Core.
Creé un proyecto ASP.NET 5.0 Core-Web-API y utilizo el paquete Microsoft.EntityFrameworkCore
versión 5.0.13. Además, creé un procedimiento almacenado con 2 parámetros de tipo DATE
. El procedimiento se ejecuta en el estudio de administración de SQL sin errores.
csharp
var p1 = new SqlParameter("@From", System.Data.SqlDbType.DateTime);
p1.Value = new DateTime(2021, 11, 07);
var p2 = new SqlParameter("@To", System.Data.SqlDbType.DateTime);
p1.Value = new DateTime(2021, 12, 07);
List<maptabledimvw> myList = myDbContext.MyTable.FromSqlRaw("EXEC myProc @From, @To", p1, p2).ToList();
davy.ai
En el fragmento de código C# anterior, se crea un proyecto ASP.NET 5.0 Core-Web-API y se utiliza el paquete
Microsoft.EntityFrameworkCore
en la versión 5.0.13. Además, se crea un procedimiento almacenado con dos parámetros de tipoDATE
. El procedimiento se ejecuta sin errores en SQL Management Studio.A continuación, se crean dos
SqlParameter
s,p1
yp2
, para almacenar los valores de los parámetros del procedimiento almacenado. Estos parámetros se llaman@From
y@To
, respectivamente. Las fechas que se pasan como parámetros son el 7 de noviembre de 2021 y el 7 de diciembre de 2021, respectivamente.Por último, se llama al método
FromSqlRaw
en el objetomyDbContext.MyTable
para ejecutar el procedimiento almacenado. El resultado de la llamada al procedimiento almacenado se devuelve como una lista de objetosMapTableDimvw
y se almacena enmyList
.