【发布时间】:2023-02-11 00:24:49
【问题描述】:
我有一个 .net 6 ef core 6.0.7 项目。
我需要调用一个存储过程,该过程返回一个在数据库中没有等效对象的 DTO,以便在 DbSet 上调用它。
我发现一些文章说 SqlQuery 或 ExecuteRawSql 都是从 DbContext.Database 调用的,但我无法连接这些点。
public class ProcedureRepository
{
private DatabaseContext databaseContext;
public ProcedureRepository(DatabaseContext databaseContext)
{
this.databaseContext = databaseContext;
}
public Task<OrderDTO> GetOrders()
{
databaseContext.Database.ExecuteSqlCommand<OrderDTO>();
databaseContext.Database.SqlQuery<OrderDTO>();
/both line throw error saying:
/"DatabaseFacade does not containt a definition for ..."
}
}
【问题讨论】:
-
只需使用 EF Core Power Tools - 它会为你连接点