Получить данные из хранимой процедуры в модель EF6 MVC
Я читал, как использовать хранимые процедуры в EF6
Но это не показывает, как я могу получить данные из процедуры в модель.
Например, у меня есть этот запрос
CREATE PROCEDURE Abastecimentos_Select
AS
BEGIN
SELECT * FROM OpenQuery(MACPAC, 'SELECT RD6001 as Referencia, RD6002 as UAP, RD6030 as QTD_AB_PDP_W01 FROM D805DATPOR.TRP060D WHERE RD6001 not like ''%OP%'' and RD6001 not like ''%PT%'' ')
END
Я хочу заполнить свою модель им, свойства - это таблицы, возвращаемые из процедуры
public class Abastecimentos
{
public string Referencia { get; set; }
public string UAP { get; set; }
public float QTD_AB_PDP_W01 { get; set; }
}
Я пытался использовать Fluent API, но нет выбора
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Abastecimentos>().MapToStoredProcedures(a => a.//No select)
}
Я использую Code First.
1 ответ
Я решил использовать Dapper при отображении SP для моделей
public Async Task OnGetListAsync() { IDbConnection con = new SqlConnection(_config.GetConnectionString("DefaultConnection"));
var query = await con.QueryAsync<ConsumoViewModel>("GetConsumoCalculado", commandType: CommandType.StoredProcedure);
return new JsonResult(query.ToList());
}