我想知道是否有任何方法将存储过程结果映射到类中。
这就是我所拥有的:
// DbContext Class:
public DbSet<StoredProcedureModelResult> SPMR { get; set; }
// Service Class:
var result = ctx.Set<StoredProcedureModelResult>().FromSql("getXXXX p1 = {0},1).ToList();这很好,但是,我使用的是数据库迁移,每次我添加一个,这个东西就会将StoredProcedureModelResult创建为一个表.
我试着忽略它,onModelCreating
modelBuilder.Ignore<SPModels.test>();但这引发了一个例外:
无法为“StoredProcedureModelResult”创建StoredProcedureModelResult,因为该类型未包含在上下文的模型中
我只想利用映射的好处,而不是创建一个表,这是一个简单的模型(非实体类型)
顺便说一句
谢谢
发布于 2017-06-03 23:22:15
您不需要将该类型设置为实体类型(通过在DbSet中注册DbContext)。只要有一个返回IEnumerable<StoredProcResults>的方法(可以在您的DbContext中),并在其中运行
dbContext.Database.SqlQuery<StoredProcResults>(...)见Database.SqlQuery(https://msdn.microsoft.com/en-us/library/system.data.entity.database.sqlquery(v=vs.113%29.aspx)``(.)
https://stackoverflow.com/questions/44347640
复制相似问题