无法将直接SQL查询的结果转换为列表<long>从通用列表

时间:2016-06-24 16:00:07

标签: c# entity-framework

我正在尝试使用直接SQL命令从db中选择对象列表。 dbdbContext

List<long> ids = db.Database.SqlQuery<List<long>>(sqlCommand).ToList(); 

我的查询,在SQL中测试时(不是Visual Studio知道这一点)返回一个类型为long的id列表。我想要返回此列表。我使用ToList()来强制执行(因为它是deferred直到枚举)。但是,我得到一个编译错误,说我不能隐式地将通用列表转换为long类型列表。

enter image description here

如何指定List<long>?这可能是一个完全愚蠢的问题,但我认为它需要T并将其转换为T的列表,此处应为List<long>

1 个答案:

答案 0 :(得分:3)

简单,只需按如下方式进行:

List<long> ids = db.Database.SqlQuery<long>(sqlCommand).ToList();