Visual studio 2017 无法查询具有实体框架核心的fromSql方法

Visual studio 2017 无法查询具有实体框架核心的fromSql方法,visual-studio-2017,entity-framework-core,asp.net-core-2.0,Visual Studio 2017,Entity Framework Core,Asp.net Core 2.0,我使用EF core 2.0.1启动了一个asp.net核心项目。 我能够成功地将数据库迁移到项目中,并生成了如下的部分类 public partial class ManagementContext : DbContext { public virtual DbSet<Result> Results { get; set; } } 但是,当尝试通过.fromSql()方法赋值时,我得到一个错误: invalidlidOperationException:“FromSql”

我使用EF core 2.0.1启动了一个asp.net核心项目。 我能够成功地将数据库迁移到项目中,并生成了如下的部分类

public partial class ManagementContext : DbContext
{
    public virtual DbSet<Result> Results { get; set; }
}
但是,当尝试通过.fromSql()方法赋值时,我得到一个错误: invalidlidOperationException:“FromSql”操作的结果中不存在所需的列“Id” 在以下两个查询中都会收到错误(get_results是一个返回结果记录的存储过程):

var resultsThroughRawQuery = dbContext.Results.FromSql("select * from dbo.Results").ToList();
var resultsThroughStoredProcedure = dbContext.Results.FromSql("EXEC get_results").ToList();
结果确实有一个Id列,它是键。
这里有什么我遗漏的吗?

什么是为
dbContext.Results.ToList()生成的EF SQL
?它提供的结果就像u query:select*from dbo.results一样。我不是在要求结果,而是EF生成的SQL查询文本。它肯定不使用
*
,而是具体的列名。因为您的问题是EF期望的列名,我们需要看看“正确”是什么应为列名。get ya这是生成的类:公共部分类ScheduledTask{public int Id{get;set;}公共字符串部署Id{get;set;}公共字符串名称{get;set;}
var resultsThroughRawQuery = dbContext.Results.FromSql("select * from dbo.Results").ToList();
var resultsThroughStoredProcedure = dbContext.Results.FromSql("EXEC get_results").ToList();