实体框架核心 - 将SP返回值返回到项目模型而无需重新映射

时间:2018-02-28 18:09:03

标签: c# .net entity-framework asp.net-core entity-framework-core

在下面的场景中,存储过程的执行返回与类型" LocalModel"

匹配的已知列

EF Core 中是否有办法查询实体并将其绑定回匿名类型。

List<LocalModel> ModelList= context.Table.FromSql(Stored_Proc +" @Param", _moduleName).ToList(); 

就像,在正常的EF中,这可以实现如下。

List<LocalModel> ModelList= context.Database.SqlQuery<LocalModel>("exec Stored_Proc").ToList<LocalModel>();

1 个答案:

答案 0 :(得分:1)

如果在要绑定的类型的FromSql上使用DbSet,那么它将创建该POCO类的实例。例如:

假设:

public DbSet<LocalModel> LocalModels { get; set; }

然后:

context.LocalModels.FromSql(...).ToList();

如果你一直在工作,或者只是你喜欢,你可以使用Set<T>()而不是实际的DbSet属性名称:

context.Set<LocalModel>().FromSql(...).ToList();